我有一个非常简单的模态窗口,它附加了正文 - 单击关闭按钮应该删除它我认为这样做但不行。我试过$(this).remove();它取出了按钮,但没有附加文字 - 我哪里出错了?
$(function(){
var qrCodeDiv='<div id="qrBlock"><a href="#" class="closeQR">X</a></div>'
$(".add").click(function(){
$('body').append(qrCodeDiv);
});
$('a.closeQR').live("click", function() {
$('body').remove(qrCodeDiv);
});
});
答案 0 :(得分:13)
.remove()
does not accept an arbitrary HTML string。这种语法对于创建元素特别有用,但这不是.remove()
所做的。
将其更改为$('body').remove('#qrBlock')
或仅$('#qrBlock').remove()
。
请注意,当click
回调多次运行时,您问题中的代码会插入多个具有相同ID的元素,which is a big no-no and will lead to undefined behavior.