我正在生成一个表并使用jQuery添加一些字段:
$('tr[id^="id-"]').prepend("<td><!-- generated by js admin/index.php #498 --><input type='checkbox' name='"+$(this).id+"' id='' class='checkbos_gruppe' /></td>");
这部分导致问题:
name='"+$(this).id+"'
我想创建一个名称为父元素的元素,所以只需要取tr
元素的id。
任何人都有更好的主意吗?
答案 0 :(得分:5)
.id
是一个DOM属性,所以应该只是:
this.id
..而不是$(this).id
,因为它不是jQuery对象的属性。
但是,this
仍然不是你想要的,不管你在哪里,它应该是.prepend()
这样的函数:
$('tr[id^="id-"]').prepend(function() {
return "<td><!-- generated by js admin/index.php #498 --><input type='checkbox' name='"+this.id+"' class='checkbos_gruppe' /></td>";
});
...或者在旧版本的jQuery中使用.each()
代替:
$('tr[id^="id-"]').each(function() {
$(this).prepend("<td><!-- generated by js admin/index.php #498 --><input type='checkbox' name='"+this.id+"' class='checkbos_gruppe' /></td>");
});