我偶然发现尝试用经典的jQuery选择器选择新创建的元素,最小的例子是:
var el = $("<input class='form-area' id='myTest'></input>");
$("#myElement").append(el);
// works fine
el.val("80");
// what I'd like to do
$("#myTest").val("80");
由于我不太确定为什么所需的选择器不能在新创建的元素上起作用,所以我在确定元素创建成功后尝试访问这些元素:
MyAppendFunction().promise().done(function() {
$("#myTest").val("80");
}
由于我需要创建多个这样的输入,并且它们的数量各不相同(表的行数),因此,如果我可以使用jQuery选择器选择它们,而不必将对它们的引用存储在列表中,那将非常好。
答案 0 :(得分:0)
您当然可以遍历添加到DOM中的-elements,因此使用索引为它们提供唯一的ID,例如: 您的{ ...
id = `myTest-${YOURINDEX}`
var el = $("<input class='form-area' id='" + id +"myTest'></input>");
..
}
要访问这些-elements中的任何一个,只需使用元素(单击的按钮,anchor ..)即可获得以“ myTest”开头的id的“同级,父项,下一个”元素: $('#yourrferenced-element')。next(“ [id ^ ='myTest-']”“)。attr('id')来获取其id,而不是您想要对其进行的操作。