我正在尝试删除元素和内容 当用户单击按钮时,在div内部的链接之前。 最好的方法是什么?
<div id="dialog" class="window">
//will be inserted a <select> element and few text here
//but I want to clear them after the user click a button
<a href="#" class="close">Close it</a> // I want to keep this <a> link.
</div>
我的Jquery
$('.model').click(function(e) {
$("#dialog").empty(); //I can't use this because <a> will be deleted. Any better ideas?
});
感谢您的回复......
答案 0 :(得分:5)
将所有这些元素包装在div中并将其删除
$('#select-wrapper').remove();
或者做得更友好一点
$('#select-wrapper').fadeOut(500, function() { $(this).remove(); });
答案 1 :(得分:1)
尝试将您要删除的内容放在自己的div中。然后,在点击事件中隐藏/删除div将是简单的jquery。
答案 2 :(得分:1)
你可以这样做:
$('.model').click(function(e) {
$("#dialog").children(":not(.close)").remove();
});
这会删除使用.remove()
但没有close
类的所有孩子。或者只是使用.clone()
克隆并重新添加链接,如下所示:
$('.model').click(function(e) {
$("#dialog a.close").clone(true).appendTo($("#dialog").empty());
});
答案 3 :(得分:1)
你真的想保留那个a
链接吗,或者你只是想让那个div包含一个之后看起来像它的链接?
为什么不用<a href="#" class="close">Close it</a>
覆盖innerHTML?
据我所知,如果该链接在某种程度上已经超出您的知识或控制范围而发生变化,那么您必须保留它,但除非是这种情况,否则就会有相似之处。