jquery 数据标签没有返回值
jquery data tag not returning values
我的页面包含 table 个元素。每行都有一个数据标签(标识为 "reckey",因为在我出现之前几年数据库就是这样设置的)。在构建 table 时逐步执行我的 javascript,我可以看到标签设置正确。即,这一行:
$("#tblActivities tbody tr:first").data("reckey")
returns 值为“122157”。但是当我尝试通过此行搜索该行时:
$("#tblActivities tbody tr[data-reckey='122157']")
我的浏览器显示它未定义。我也试过
$("#tblActivities tbody tr[attr-data-reckey='122157']")
而且只是为了 s 和 g,我试过了
$("#tblActivities tbody tr[data-reckey]"), which still returned undefined.
有人可以告诉我我缺少什么吗?如果它是一个简单的语法错误,我一点也不会感到惊讶,尽管我希望它是更深层次的东西,如果只是这样我就不会觉得自己是个彻头彻尾的白痴。
谢谢,
由于您使用 Javascript 添加数据属性,因此您将无法直接 select 它(即通过 $('[data-reckey="122157"]')
,因为它 jQuery将数据存储在 jQuery 对象中,而不是 html.
因此,如果可以的话,要么将 data-reckey=""
直接放入 HTML,要么遍历元素,例如:
$("#tblActivities tbody tr").each(function () {
if ( $(this).data('reckey') === '122157' ) {
// found the element...
}
});
为了确认以防其他人稍后搜索同样的问题:解决方案是在创建 html 时包含数据标签,而不是稍后通过 jquery 更改它。
我的页面包含 table 个元素。每行都有一个数据标签(标识为 "reckey",因为在我出现之前几年数据库就是这样设置的)。在构建 table 时逐步执行我的 javascript,我可以看到标签设置正确。即,这一行:
$("#tblActivities tbody tr:first").data("reckey")
returns 值为“122157”。但是当我尝试通过此行搜索该行时:
$("#tblActivities tbody tr[data-reckey='122157']")
我的浏览器显示它未定义。我也试过
$("#tblActivities tbody tr[attr-data-reckey='122157']")
而且只是为了 s 和 g,我试过了
$("#tblActivities tbody tr[data-reckey]"), which still returned undefined.
有人可以告诉我我缺少什么吗?如果它是一个简单的语法错误,我一点也不会感到惊讶,尽管我希望它是更深层次的东西,如果只是这样我就不会觉得自己是个彻头彻尾的白痴。
谢谢,
由于您使用 Javascript 添加数据属性,因此您将无法直接 select 它(即通过 $('[data-reckey="122157"]')
,因为它 jQuery将数据存储在 jQuery 对象中,而不是 html.
因此,如果可以的话,要么将 data-reckey=""
直接放入 HTML,要么遍历元素,例如:
$("#tblActivities tbody tr").each(function () {
if ( $(this).data('reckey') === '122157' ) {
// found the element...
}
});
为了确认以防其他人稍后搜索同样的问题:解决方案是在创建 html 时包含数据标签,而不是稍后通过 jquery 更改它。