这是我的jquery代码
$.ajax({
url: "PopUpProductDetails.aspx",
cache: false
}).done(function (html) {
$("#dialog").append(html);
});
第一次,它运行得很好。它显示PopUpProductDetails.aspx页面的内容。但是,在那之后,如果我再次点击,我会得到两次相同的内容,以此类推。我认为问题在于,在添加新内容之前,我需要首先清除对话框元素。
我该怎么做?
.append()
将html附加到现有html字符串的末尾,使用.html()
替换#dialog
中当前的内容。
在函数内部,首先清除对话框,然后填充内容
$.ajax({
url: "PopUpProductDetails.aspx",
cache: false
}).done(function (html) {
$("#dialog").html("");
$("#dialog").html(html);
});
您可以先使用.empty()
,然后在一行中使用.append()
:)
像这样:
$.ajax({
url: "PopUpProductDetails.aspx",
cache: false
}).done(function (html) {
$("#dialog").empty().append(html);
});
如果您需要首先清除对话框,请使用.empty(),它比.html(")更快
请参阅Jquery Different.html(")与.empty()