jQuery是否在内部将HTML5数据属性键转换为小写?
我试图尽可能地将我的JavaScript编码风格与我的Zend编码风格相符合,这是使用camelCase。 因此,在我的HTML5数据属性中,我将命名它们,如下例所示:
...
将Jquery用于操作的非常不引人注目的方式,但是当我调用$(’。action’)。data()时,属性名称将转换为小写。
这有什么变通方法吗?
我从不认为JavaScript变量应该包含破折号,我无法理解为什么jQuery在内部为我做这个? 或者也许是HTML5?
如果你使用
data-action-method="delete"
然后你可以访问该属性
$('.action').data('actionMethod')
这是HTML5 DOM API的一部分 :
使用以下规则将自定义数据属性转换为DOMStringMap条目的键:
- 删除任何破折号(U + 002D);
- 短划线(U + 002D)之后的任何字母,在删除之前,都以其大写对应方式设置。
首先,看看这部分 JQuery的源代码,它假设你有小写属性。
其次,按照惯例,所有HTML5属性都应该是小写的,请参阅: http : //www.htmlbasictutor.ca/html-tag-attributes.htm
最后,请注意,如果您坚持使用大写,可能会遇到更多问题,请参阅Django:无法在HTML输入元素中添加UPPERCASE属性名称