1

我正在尝试在警报或控制台中显示 jquery 自定义属性。

我尝试使用console.log()来记录我的自定义数据属性,但它没有显示该值。

我正在尝试显示此值data-something,这是我的代码:

    // create a UL element
var ul = $('<ul></ul>');

// add some LI elements
ul.append(
    $('<li class="bear" data-type="panda">panda bear</li>'),
    $('<li class="bear" data-type="koala">koala bear</li>'),
    $('<li class="wallaby" data-type="kangaroo">kangaroo</li>')
);

// this won't work because our UL is not in the dom yet
console.log($('.bear').length); //=> 0

// let's just pick the bears in our UL using our UL as the context
var bears = $('.bear', ul);
console.log(bears); //=> [li.bear, li.bear]

// lets loop through and see data attributes
bears.each(function() {
    console.log($(this).attr('data-type'));
});
//=> "panda"
//=> "koala"
4

1 回答 1

1

您不是在创建 html 元素,而是在创建字符串。由于字符串没有像 .data 这样的方法,因此您无法访问它们。您还必须data-somethingundefined 这样访问数据属性:

element.dataset

由于您没有推送 html 元素,因此您无法访问这些属性。

创建元素

var el = document.createElement('li');
el.setAttribute('class','loc-li');
el.dataset.something = rowData.APPT_LOC_QUAL[k].LOCATION_CD;
console.log(el.dataset.something);
于 2013-06-24T21:32:24.707 回答