我的页面上有一个锚点标签,可以在活动和取消的实体之间切换。一次只显示一个链接,取决于用户想要查看的内容。我使用ajax来替换HTML或者有效的信息或取消信息。见下文。jquery ui加载对话框点击只能触发一次
我遇到的问题是,当用户单击链接时,应该显示加载对话框,但对话框只在第一次点击时显示,而不是后续点击。这只在Chrome中发生。
$(document).ready(function() {
$("a#showCancelled, a#showActive").live("click", function(event) {
event.preventDefault();
$("#dialog-modal").dialog('open');
$.ajax({
type: "GET",
url: $(this).attr("href"),
dataType: "html",
cache: false,
success: Success,
error: Error
});
});
$("#dialog-modal").dialog({
autoOpen: false,
height: 50,
width: 400,
modal: true,
closeOnEscape: false,
draggable: false,
resizable: false
});
});
function Success (data, status) {
$("#dialog-modal").dialog('close');
$("body").html(data);
}
HTML
<div id="dialog-modal" title="Loading...">
<p><img src="../images/busy.gif" /> Just a moment...</p>
</div>
编辑 - 我从建议改变了我的代码下面包裹我想用一个虚拟<div>
更新的内容。但是现在对话框根本没有打开,并且在IE7中更新内容时什么都不显示。
$("a#showCancelled, a#showActive").live("click", function(event) {
event.preventDefault();
$link = $(this).attr("href");
$("#dialog-modal").dialog('open');
$("#dummy").load($link + " #dummy");
$("#dialog-modal").dialog('close');
});
现在运行,肯定是浏览器缓存问题。 – 2010-08-30 17:05:18