从转换中停止jQuery .data()

时间:2012-09-27 13:41:33

标签: jquery

有没有办法阻止.data()函数将数据转换为另一种类型?

例如,使用HTML <div data-code-name="007">Bond, James</div>

$("div").data("codeName")返回7而不是“007”

示例:http://jsfiddle.net/dMHS4/

更新:我刚才注意到,如果你改成jQuery 1.8.2,不会转换。 http://jsfiddle.net/dMHS4/2/

更新: Has jQuery 1.8 changed how .data() returns the value?

1 个答案:

答案 0 :(得分:9)

使用.attr()代替.data()

$("div").attr("data-code-name")

http://jsfiddle.net/dMHS4/1/


取自jQuery documentation

  

每次尝试都将字符串转换为JavaScript值   (否则,这包括布尔值,数字,对象,数组和null)   它留作一个字符串。要将值的属性检索为字符串   没有任何尝试转换它,使用attr()方法