从这里Are empty HTML5 data attributes valid?
他们说数据属性可以是属性
所以我用它来测试,这个预期结果是真/假,但我只是未定义,如何使用jquery获得正确的结果?
<input type='checkbox' onclick='testDataProp(this)' data-tf>
<input type='checkbox' onclick='testDataProp(this)'>
function testDataProp(clickedBox)
{
var trueFalse=$(clickedBox).prop('data-tf');
alert(trueFalse);
}
答案 0 :(得分:4)
使用.data()获取数据属性,如下:
function testDataProp(clickedBox)
{
var trueFalse=$(clickedBox).data('tf');
alert(trueFalse);
}
演示jsFiddle
<强>更新强> 您可以使用.hasData()进行检查,如下:
function testDataProp(clickedBox)
{
var trueFalse=$.hasData(clickedBox); //returns false
alert(trueFalse);
}
如果您想检查data-tf
属性是否存在,那么您可以使用.hasAttribute():
function testDataProp(clickedBox)
{
var trueFalse=$(clickedBox)[0].hasAttribute('data-tf'); //returns true for first and false for second checkbox
alert(trueFalse);
}