我的jquery中有一个函数,它会在点击链接时附加一个新的选择类。 我现在要做的是在用户决定不使用此选择功能的情况下,单击按钮删除此类。
我的追加功能就像这样:
$("#newsublevel").click(function() {
$(".navoptions").append('<br/><select class="hello"><option value="Home">Home</option><option value="Home">Home</option><option value="Home">Home</option><option value="Home">Home</option><option value="Home">Home</option></select><a href="#" class="remove">Remove</a>');
});
我在删除功能上有这个,但这根本不起作用:
$(".remove").click(function() {
$(".hello").remove();
});
如何有效删除超链接所指的选择框?我试过两种不同的方法来取消这个没有成功的任何想法?
add.html
<div class="maincontent">
<h2 class="sitemaphead">Sitemap</h2>
<p>Add a sub level to About.</a></p>
<div class="navoptions">
<select>
<option value-"Home">Home</option>
<option value-"Home">Home</option>
<option value-"Home">Home</option>
<option value-"Home">Home</option>
<option value-"Home">Home</option>
<option value-"Home">Home</option>
<option value-"Home">Home</option>
</select>
</div>
<p id=""><a href="#" id="newsublevel">Click here</a> to add another sub level</p>
</div>
答案 0 :(得分:3)
尝试.on()
$(".navoptions").on('click','.remove',function() {
$(".hello").remove();
});
答案 1 :(得分:1)
试试这个
$('.navoptions').on('click', '.remove', function () {
$(this).prev().remove().end().remove();
});
答案 2 :(得分:1)
由于SELECT对象是动态添加的,因此在创建初始DOM之后,它与任何侦听器都没有关联。[在你的情况下是onClick]。
与其他建议一样,使用“.on”动态添加侦听器。您可以在此处找到相关文档。 http://api.jquery.com/on/
答案 3 :(得分:0)
$(".navoptions").on('click','.remove',function() {
$(".hello").remove();
});
参考On