2013-06-26 8 views
0

Я извлекаю значение тега html в функции JavaScript, но прямо сейчас, если я хотел получить значение атрибута данных html и передать его в переменной JavaScript.Передача значения атрибута данных в переменную 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" 

ответ

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>'); 
+0

так, как это исправить .... – user2475135

0

Для того, чтобы получить атрибут элемента, это легко с помощью JQuery.

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

или

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

, но как передать его в переменную JS locID – user2475135

+0

'locID = $ ('#selectorId'). attr ('attribute name'); 'потому что он возвращает результат строки. –

+0

Здесь я использую класс, а не так, как я могу это сделать – user2475135

0

Вы можете сделать:

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