我正在使用jQuery 1.4.4。我有这个源代码:
<div id="area1">
<ul id="testlist" data-filter="false">
</ul>
</div>
如何在jQuery中将data-filter属性更改为true? 我试过例如:
$('#testlist').attr("data-filter").val(true);
但它不起作用。
有人有想法吗?
最诚挚的问候。
答案 0 :(得分:8)
attr的语法是$.attr(attributeName, value);
。试试这个:
$('#testlist').attr("data-filter", true);
答案 1 :(得分:6)
由于您使用的是jQuery 1.4.4
和“数据”属性,因此可以使用jQuery's .data()
method:
示例: http://jsfiddle.net/patrick_dw/SLskn/
alert( $('#testlist').data("filter") ); // alerts "false"
$('#testlist').data("filter",true);
alert( $('#testlist').data("filter") ); // alerts "true"
从jQuery 1.4.3开始,HTML 5数据属性将自动引入jQuery的数据对象。
答案 2 :(得分:3)
你使用了错误的语法。试试这个:
$('#testlist').attr("data-filter", true);
答案 3 :(得分:2)
试试这个:
$('#testlist').attr("data-filter", "true");
或者可能
$('#testlist').attr("data-filter", true);
答案 4 :(得分:1)
$('#testlist').attr("data-filter",true);
答案 5 :(得分:1)
尝试$('#testlist')。attr(“data-filter”,“true”);代替
答案 6 :(得分:1)
.attr的正确用法是.attr(name, value)
所以将代码更改为
$('#testlist').attr("data-filter", true);
答案 7 :(得分:1)
所以你正在使用自定义属性的HTML5语法......很好。
有一个jQuery metadata plugin允许您以更加语义的方式访问这些属性。只需使用它:
// Reading:
var tooltipTitle = $(".tooltip").metadata().filter;
// Writing:
$(".tooltip").metadata().filter = "whatever";