mvc 3 Html.EditorFor ajouter un attribut html fonctionne pas
J'essaie d'ajouter attribut html pour EditorFor
@Html.EditorFor(model => model.UserName, new { style = "width: 100px" })
Mais de toute façon, je reçois
<input id="UserName" class="text-box single-line" type="text" value="" name="UserName">
- Double Possible de les attributs Html pour EditorFor() dans ASP.NET MVC
Vous devez vous connecter pour publier un commentaire.
EditorFor va remplacer ces attributs. Voir Les attributs Html pour EditorFor() dans ASP.NET MVC pour des solutions de contournement.
Si vous avez besoin de changer l'affichage de la largeur, et vous n'êtes pas compter sur n'importe quel Éditeur de Modèles alors la meilleure solution est d'utiliser TextBoxFor au lieu
J'ai eu le même problème résolu...
@Html.EditorFor()
dynamiquement décide du type de contrôle utilisé sur la base de l'élément de modèle.Ces personnalisations travailler avec
@Html.LabelFor()
de@Html.TextBoxFor()
. Le code suivant a été testicules et fonctionne correctement.Rasoir:
HTML généré
Veuillez noter que le deuxième argument transmis est
null
, le style est le troisième attribut. si vous utilisez@Html.EditorFor()
est un must, alors vous devez utiliser la classe CSS au lieu de style@Html.EditorFor()
sur MSDNRemarque: Le code a été testé avec MVC4 et j'espère que c'est valable pour MVC3 aussi
Au lieu d'utiliser
@Html.EditorFor(modèle => le modèle.UserId)
Utilisation
@Html.TextBoxFor(modèle => le modèle.L'identifiant, le nouveau { @Value = "Prabhat" })
Pour ce que ça vaut, j'ai eu ce même problème. Je l'ai résolu en utilisant une version légèrement différente de Narenda V de la solution.
J'ai créé une classe comme ceci: (note - min-largeur au lieu de largeur)
alors de mon point de vue:
Quand je n'ai pas utilisé min-width, mais en largeur, il n'a pas de travail.
Bob
Si vous avez besoin d'utiliser EditorFor et pas TextBoxFor et plusieurs éditeurs sur la page, mais seulement le besoin de changer la largeur de celles qui sont spécifiques à... Le plus simple ce qui est d'ajouter un style css à l'ID de classe en tant que telle:
Vous pouvez créer un style de classe dans .css comme
Style peut être appilied avec l'attribut html class.