我有这个基本的HTML:
<div id ="div1" data-pagenumber="0001">First page</div>
<div id = "div2"></div>
和我的jQuery:
var number = $('#div1').data('pagenumber')
$('#div2').append(number);
小提琴:http://jsfiddle.net/JabUS/
为什么div2
内的文字设为1
?在我看来,像jQuery自动转换我的价值。如何阻止此转换,使其打印如下0001
?
答案 0 :(得分:5)
您需要使用:
var number = $('#div1').attr('data-pagenumber');
因为来自jQuery docs:
每次尝试都将字符串转换为JavaScript值 (否则,这包括布尔值,数字,对象,数组和null) 它留作一个字符串。要将值的属性检索为字符串 没有任何尝试转换它,使用attr()方法
<强> Updated Fiddle 强>
但实际上,如果你使用jQuery版本1.8 +,你应该没问题。