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