3

我有一个非常简单的模态窗口,它附加了正文-单击关闭按钮应该将其删除,我认为这样做可以,但没有。我试过 $(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); 
});
});
4

1 回答 1

14

.remove()不接受任意 HTML 字符串。这样的语法对于创建元素特别有用,但事实并非.remove()如此。

将其更改为$('body').remove('#qrBlock')$('#qrBlock').remove()


请注意,当click回调运行不止一次时,您问题中的代码将插入具有相同 ID 的多个元素,这是一个很大的禁忌,将导致未定义的行为。

于 2013-04-09T00:28:50.123 回答