javascript - 在控制台或日志中显示jquery自定义属性

标签 javascript html

我正在尝试在警报或控制台中显示 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"

最佳答案

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

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);

关于javascript - 在控制台或日志中显示jquery自定义属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17285305/

相关文章:

javascript - if语句只执行第一个条件并运行其他条件但没有结果

javascript - Node : removing duplicate objects from array

javascript - 如何等待来自 forEach 循环的多个异步调用?

javascript - 在 Javascript 或 jQuery 中,如何检测字符串开头的空格?

html - 在 Bootstrap 4 中垂直堆叠的列之间添加间距

javascript - Node.js 6.10 十六进制->BASE64->UTF8

javascript - 如何在 Python 中使用 Selenium 定位 onmouseover 元素?

html - 是否有可能制作像表格这样的跨度行为

javascript - 使用 Bootstrap 和 ACF Repeater 安排替代高度 div

html - 文字与图片对齐