我有这个HTML。
<img src="2.png" alt="Pending" data-number="00991" data-status="0">
我正在使用以下jQuery来获取值。
var number = $(this).find('img').data('number');
以上jQuery代码使用非前导零获取值,例如上面的代码只会获取991
而不是00991
,会出现什么问题?
答案 0 :(得分:31)
您可以使用'attr':
var number = $(this).find('img').attr("data-number");
答案 1 :(得分:17)
来自fine manual:
每次尝试都将字符串转换为JavaScript值(包括布尔值,数字,对象,数组和null),否则将其保留为字符串。要将值的属性检索为字符串而不尝试转换它,请使用
attr()
方法。
所以jQuery认为代码是一个数字并且丢弃前导零。如果jQuery试图对您的数据属性过于聪明,请使用attr('data-number')
。