我有一个javascript,它在页面加载后将一个元素(div)附加到我的HTML页面。我想为这个动态div添加一个id。我怎么能这样做?
以下是更多信息: 第一个js是 myscript1.js ,并加载到HTML页面的底部。在这个脚本中,我有以下代码:
$('div#existingDiv').append('<div class="newDiv">Content</div>');
第二个js是 myscript2.js ,并在 myscript1.js 之后加载。我想添加一个ID。
$('div.newDiv').attr('id','div-1234');
但似乎div.newDiv
不存在。
我试图让div#existingDiv
的孩子($('div#existingDiv').children()
),但它返回一个空的结果。
有人可以帮助我吗?
PS:我无法修改myscript1.js所以请不要建议我在myscript1.js文件中做我想做的事。
答案 0 :(得分:1)
您的代码似乎有效。在这里查看:http://jsfiddle.net/2sL5T/ 可能你的问题是那个
$('div.newDiv').attr('id','div-1234');
在
之前执行$('div#existingDiv').append('<div class="newDiv">Content</div>');
首先,您需要找到插入新html的事件。是在页面加载时发生的吗?那么也许你忘了把你的代码放在onload函数中? http://learn.jquery.com/using-jquery-core/document-ready/
答案 1 :(得分:0)
你可以这样做:
$('#existingDiv div.newDiv:last').attr('id','div-1234');
这使用了这样的事实:当你追加某些东西时,它会在最后添加。