J'ai entendu de plusieurs sources différentes que lorsque vous utilisez des assistants HTML dans ASP.NET MVC2, vous pouvez créer des attributs personnalisés avec des tirets (par exemple <). rowId = "5" >) en utilisant un trait de soulignement à la place du tiret, et lorsque le code HTML est écrit sur la page, les traits de soulignement seront remplacés par des tirets.ASP.NET MVC2 Ne pas remplacer les traits de soulignement par des tirets dans HtmlAttributes
Donc, quelque chose comme ceci:
<%= HtmlActionLink(Model.Name, "MyView", null, new {data_rowId = Model.id}) %>
devrait rendre comme
<a data-rowId="0" href="myURL">Row Name</a>
Mais ... ce n'est pas. Je pense que cette fonctionnalité est peut-être activée uniquement dans l'aperçu MVC3 Beta (comme mentionné dans les notes de version de l'aperçu MVC3), mais this thread est à peu près la même chose, et il s'agit de MVC2. Je sais que je peux utiliser l'autre solution présentée dans ce fil, mais je préfère ne pas avoir recours à l'utilisation du dictionnaire si une solution plus élégante existe.
Quelqu'un sait s'il y a quelque chose de simple que je peux faire pour que ça fonctionne?
L'attribut Data-data est valide pour HTML 5. http://dev.w3.org/html5/spec/elements.html#embedding-custom-non-visible-data –
@Erik Philips, HTML5 est encore un brouillon et non pris en charge par tous les navigateurs, mais bon point. –
Je souhaite que ce n'était pas la réponse, mais ne peut pas trouver une meilleure approche. Je pensais avoir vu quelque part que les underscores étaient promus à des tirets ... eh bien! – Jafin