2009-12-18 17 views
6

Me gustaría limitar un cuadro de texto a 10 caracteres en MVC.¿Cómo limito la longitud de los caracteres en un cuadro de texto en MVC?

<label ID="lbl2" runat="server" Width="20px"></label> 
<%=Html.TextBox("polNum") %>  
<label ID="lbl1" runat="server" Width="10px"></label> 

Sé que puede establecer la propiedad Max Length en .net. ¿Cómo hago eso en MVC con un cuadro de texto generado de esta manera?

+2

¿Por qué usar un ''? Eso es Webforms. Este es MVC, use una etiqueta '

+0

Funcionó de cualquier manera, así que no lo vi como un problema, pero gracias por el aviso, voy a poner esto en práctica ... – MrM

Respuesta

10

Es necesario configurar algunas propiedades html ... algo como:

<%=Html.TextBox("polNum",null, new {maxlength=10}) %> 

buena suerte

+3

En realidad, no necesita esta sobrecarga. Puede omitir el nulo e ir con la versión de dos argumentos. – Will

3

hacerlo en HTML sin formato:

<%= Html.TextBox("polNum", null, new { @maxlength = "25" }) %> 

(El parámetro null es porque no desea que un valor por defecto ...)

2
<%=Html.TextBox("polNum", new { maxlength = 10 }) %> 

http://msdn.microsoft.com/en-us/library/dd492984.aspx

HtmlHelper utiliza la reflexión para examinar el tipo anónimo. Convierte los campos del tipo en atributos en, en este caso, el control TextBox. El HTML resultante se parece a

<Textbox id="polNum" maxlength =10 /> 

Puede utilizar el tipo anónimo añadir otros atributos relevantes, tales como

new { @class = "MyCssClass", type = "password", value="HurrDurr", 
     textmode="multiline" } 
+0

En XHTML, todos los atributos deben estar en mayúscula, por lo que maxlength en lugar de MaxLength –

+2

OH QUERIDO, le ruego me disculpe por haber hecho explotar su página web. – Will

2

Uso continuación html para la longitud del conjunto de cuadro de texto máx En segundo parámetro es Html.TextBox valor para el cuadro de texto Entonces, puede pasar "" o nulo

<%=Html.TextBox("polNum", "", new { maxlength = 10 }) %> 
Cuestiones relacionadas