Comment ajouter des data-*
attributs html à l'aide de TextboxFor?
Voici ce que j'ai actuellement:
@Html.TextBoxFor(model => model.Country.CountryName, new { data-url= Url.Action("CountryContains", "Geo") })
Comme vous le voyez, la -
cause un problème ici data-url
. Quel est le moyen de contourner cela?
asp.net-mvc
html
asp.net-mvc-3
Shawn Mclean
la source
la source
Réponses:
Vous pouvez utiliser underscore (
_
) et l'assistant est suffisamment intelligent pour faire le reste:Et pour ceux qui souhaitent obtenir le même résultat dans les versions antérieures à ASP.NET MVC 3, ils pourraient:
la source
EditorFor
. L'assistant EditorFor est utilisé pour rendre un modèle HTML personnalisé qui correspond au type donné. Un modèle peut contenir de nombreux éléments, donc parler d'attributs dans un modèle n'a pas vraiment de sens. Bien sûr, vous pouvez toujours écrire un modèle personnalisé qui fonctionne avec leadditionalViewData
paramètre qui peut être transmis à un modèle d'éditeur et les afficher simplement en tant qu'attributs dans le champ de saisie correspondant._
est converti-
en versions plus anciennes (moyennes?) De MVC. Il se peut que la ou les versions les plus récentes l'aient supprimée, mais je l'utilise avec succès sur MVC 3 et 4._
est également converti-
en MVC 5. Je l'utilise avec succès dans un projet sur lequel je travaille actuellement, qui utilise MVC 5.