[英]How to modify dynamically generated elements with Jquery and without using click()?
这是动态创建的元素:
<th style="" data-field="realName">
<div class="th-inner ">Name</div>
<div class="fht-cell"></div>
</th>
我想添加以下属性:
$("th[data-field='realName']").attr("data-i18n", "realName");
$("th[data-field='realName']").i18n();
我尝试了这个:
$(document).on("trigger", "th[data-field='realName']", function (e) {
$("th[data-field='realName']").attr("data-i18n", "realName");
$("th[data-field='realName']").i18n();
})
但这行不通-未分配属性。
最好的方法是什么?
我总是使用querySelector / querySelectorAll而不是jquery。
var elements = document.querySelectorAll(th[data-field='realName']);
for(var i = 0; i < elements.length; i++)
{
elements[i].setAttribute("data-i18n", "realName");
}
要么
var element = document.querySelector(th[data-field='realName']);
if(element)
element.setAttribute("data-i18n", "realName");
我认为代码应该是这样的:
$("th").each(function(){
if ($(this).data("field") == "realName"){
$(this).attr("data-i18n","realName");
}
});
$(element).attr("data-x")
和$(element).data("x")
不同。
尝试这个:
$("th[data-field='realName']").data("i18n", "realName");
$("th[data-field='realName']").data("i18n");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.