我正在迭代一个数组并动态创建一个div,如下所示:
$.each(item,function(k,item2) {
html = '<td><div id="test">'+item2.Name +'</div></td>'
//For just testing purpose , I am adding a div dynamically as:
$("#test").append("<div class='test class'></div>");
});
但最后当我浏览html页面时,根本找不到具有class ='test class'的新div。 有什么我想念的吗?
编辑: 在html标签“html”中,有多个div,我想通过id附加到特定的div
不完全确定问题是什么:
但是在创建html之后
$("#test").append("<div class='test class'></div>");
有效但附加使用$(html).find()不是
答案 0 :(得分:2)
由于元素未附加在DOM中,因此无法使用
$
选择器访问它。 您可以html
形式使用string
变量保持元素,内容不会是document
,但您可以在使用#test
包装后访问$
元素
$.each(item, function(k, item2) {
var html = '<td><div id="test">' + item2.Name + '</div></td>';
$(html).find('#test').append("<div class='test class'></div>");
});
答案 1 :(得分:0)
您没有动态创建id为“test”的元素,您刚刚在变量中分配了该元素。请尝试下面的代码
$.each(item,function(k,item2) {
html = '<td><div id="test">'+item2.Name +'</div></td>';
$('any existing element class/id').html(html);
//For just testing purpose , I am adding a div dynamically as:
$("#test").append("<div class='test class'></div>");
});