相关问题:Stop jQuery .data() from converting
根据.data()
的文档:
每次尝试都将字符串转换为JavaScript值 (否则,这包括布尔值,数字,对象,数组和null) 它留作一个字符串。要将值的属性检索为字符串 没有任何尝试转换它,使用attr()方法
这适用于jQuery 1.7.2,但1.8.2不进行转换。这是新的预期行为吗?
例如,使用HTML <div data-code-name="007">Bond, James</div>
jQuery v1.7.2
$("div").data("codeName")
返回7
示例:http://jsfiddle.net/dMHS4/
jQuery v1.8.2
$("div").data("codeName")
返回“007”
示例:http://jsfiddle.net/dMHS4/2/
答案 0 :(得分:4)
我认为这回答了你的问题
http://bugs.jquery.com/ticket/7579
他们还有一个测试小提琴http://jsfiddle.net/dmethvin/8SsWK/
并且它表明如果转换为数字将其从1.0改为1,那么它现在被视为字符串而不是数字。如果你在1.7.2 vs 1.8.2
中运行测试,你可以看到这种差异