我使用名为" sampageswrapper"的jquery动态创建一个div,问题是我想检查div名称sampageswrapper
是否已经创建然后删除它。
<div id="container2" class="container" style="width:600px; height: 700px" name="container2">
Enter Color Name and use + to add more colors:
<input id="byname" type="text" name="byname">
<br>
<br>
<div class="sampageswrapper">
<div class="pagenumbering" align="center" style="clear: both; margin-top:12px; color:#FFF">
<div class="buttons">
</div>
<div class="pagecount" align="center">
</div>
<div class="sampageswrapper">
</div>
以下是我的JS / Jquery代码
if ($("#sampageswrapper").length > 0) {
jQuery('#container2').find('#sampageswrapper').remove();
//i also tried jQuery('#sampageswrapper').remove();
}
但是我无法删除div请指导我。
答案 0 :(得分:3)
您正在根据ID选择sampageswrapper
,但您应该在课程上进行测试。
jQuery('#container2').find('.sampageswrapper').remove();
jQuery('#container2 .sampageswrapper').remove(); // works too
答案 1 :(得分:2)
好像你有重复的id
,因为id
必须是唯一的,你可以使用类来代替动态添加的元素,然后你可以这样做:
if ($("#container2 .sampageswrapper").length > 0) {
jQuery('#container2').find('.sampageswrapper').remove();
}
答案 2 :(得分:1)
您尝试使用id
sampageswrapper删除对象,但是在html中是类名。请在删除声明中使用.sampageswrapper
!
答案 3 :(得分:1)
添加断点:
if ($("#sampageswrapper").length > 0) {
debugger;
jQuery('#container2').find('#sampageswrapper').remove();
}
打开控制台和刷新页面,一旦它在断点处停止,在控制台中运行:
jQuery('#container2')
确保它返回您期望的对象。然后在控制台中运行它:
jQuery('#container2').find('#sampageswrapper')
在这里,你会看到它什么都不返回。这是因为'#sampageswrapper'
选择器是错误的,而应该是类选择器:
jQuery('#container2').find('.sampageswrapper')
每当遇到涉及jquery选择器的代码问题时,您都应该经历此过程,以便您可以专注于导致问题的特定选择器。
答案 4 :(得分:1)
if ($(".sampageswrapper").length > 0) {
jQuery('#container2').find('.sampageswrapper').remove();
}
使用类选择器而不是id选择器