我正在使用jQuery filtername
在onClick上设置数据属性,工作正常.
$('#tag-group ul').append('<li><i class="fa fa-times" aria-hidden="true" data-filtergroup="'+filterGroup+'" data-filtername="'+filterName+'"></i>'+text+'</li>');
Run Code Online (Sandbox Code Playgroud)
它在屏幕上显示为ok
<li><i class="fa fa-times" aria-hidden="true" data-filtergroup="location" data-filtername="Melbourne"></i> Melbourne</li>
Run Code Online (Sandbox Code Playgroud)
然后我试图在另一个onClick上再次拿起它,但它回来时未定义.当console log $(this).text();
它工作但我控制日志时$(this).data('filtername');
它是未定义的.如果它是由jQuery生成的,dom是否隐藏它?
$(document).on('click','#sau-filter-tags ul li', function(event){
var text = $(this).text();
var filterName = $(this).data('filtername');
console.log(filterName); //Undefined
});
Run Code Online (Sandbox Code Playgroud)
filtername
是i
li 中标签的属性.
你需要选择i
标签:
$(document).on('click', '#sau-filter-tags ul li i', function(event) {
var text = $(this).text();
var filterName = $(this).data('filtername');
console.log(filterName); //Undefined
});
Run Code Online (Sandbox Code Playgroud)
或者你需要将事件附加到li并找到我this
,例如:
$(this).find('i').data('filtername')
归档时间: |
|
查看次数: |
5228 次 |
最近记录: |