在 Razor 中,我可以这样做:
<p @Html.MyCustomDataAttributeFor(person) >@person.Name</p>
渲染这样的东西:
<p data-custom-person-id="1234567890" >Fred</p>
我真的必须在(不显眼的)JavaScript 中这样做吗:
$('p[data-custom-person-id="1234567890"]').css('background-color','red');
当我更愿意这样做时:
$('p[@Html.MyCustomDataAttributeFor(person)]').css('background-color','red');
如果我可以,否则如果 HTML 帮助程序生成的数据属性发生变化,我的客户端代码将不再为元素设置样式。