Spécifiez la taille et maxlength pour Html.TextBoxFor

j'ai besoin de changer la taille de la zone de texte :

 @Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId})

j'ai essayé

@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, @maxlength = "100" })

mais ne fonctionne pas.

24
demandé sur Adnane ARHARBI 2012-02-22 17:47:52

3 réponses

Vous pouvez essayer ceci :

@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, style ="width:200px"})

il suffit de changer la valeur de 200px pour la taille que vous voulez.

Pour maxlength j'utilise la même syntaxe que vous et il est travaillé pour moi.

 @Html.TextBoxFor(model => model.EL_Taille_Initiale, new { style = "width:50px", @maxlength = "5" })
37
répondu ThePaye 2012-02-22 14:00:18

Prendre "@" caractère de votre maxlength l'attribut. Vous avez seulement besoin de cela pour les mots-clés réservés (i.e. class). En outre, vous n'avez pas besoin des guillemets autour du nombre pour maxlength.

@Html.SimpleTextBoxFor(m => ((ModifiableProperty<string>)m).Value.TheCurrentValue, new { id = fieldId, maxlength = 100 })

si cela ne résout pas le problème, veuillez afficher ce que le balisage HTML est généré sur la page de réponse.

9
répondu 2012-02-22 13:56:46

j'utilise un constructeur pour ma TextBox qui ne permet pas de passer les attributs HTML, donc j'ai dû ajouter ceci à mon $(document).ready fonction: $('#textBoxID').attr('maxlength', 30); Ne répond pas directement à la question de L'OP, mais offre un point de départ alternatif.

1
répondu KennyZ 2013-06-03 16:25:45