将数据属性值传递给JavaScript变量

时间:2013-06-26 03:27:15

标签: javascript jquery html jquery-ui javascript-events

我正在JavaScript函数中检索html标记的值,但是现在如果我想检索html的数据属性值并将其传递给JavaScript变量。

我该怎么做?

   // 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"

3 个答案:

答案 0 :(得分:0)

我认为问题是你没有在这里使用字符串连接

statusHtmlArr.push('<li class="loc-li" data-test="' + rowData.APPT_LOC_QUAL[k].LOCATION_CD + '"  value="' + rowData.APPT_LOC_QUAL[k].LOCATION_CD + '"><a class="sub-detail" href="Javascript:void(0);">' + rowData.APPT_LOC_QUAL[k].LOCATION + '</a></li>');

答案 1 :(得分:0)

为了检索元素的属性,使用jQuery很容易。

$('#selectorId').attr('attribute name')

$('.className').attr('attribute name')

答案 2 :(得分:0)

你可以这样做:

var locID = $("li.loc-li")[0].data("test");