我有一个jQuery UI对话框,可以从另一个页面加载内容。 该对话框第一次打开,但不是第二次打开。如果不在对话框中加载任何内容,它也会第二次运行。
请参阅jsFiddle。 [它有效,错误必须在其他地方]
HTML:
<a class="click" href="form.php">form</a>
<a class="click" href="data.php">data</a>
<a class="click" href="user.php">user</a>
<div id="dialog"></div>
JavaScript的:
$(document).ready(function() {
$("#dialog").dialog({
autoOpen: false,
closeOnEscape: true
});
$('.click').click(function(event) {
event.preventDefault();
$('#dialog').load(this.href);
$("#dialog").dialog('open');
});
});
答案 0 :(得分:1)
尝试在加载的完整回调中打开对话框 - 默认情况下加载将运行异步,因此在您打开时可能无法完成 - 这可能会弄乱它(尽管很难当示例工作时说:-))
var $dialog;
$(document).ready(function() {
$dialog = $("#dialog").dialog({
autoOpen: false,
closeOnEscape: true
});
$('.click').click(function(event) {
event.preventDefault();
$dialog.load(this.href, function() {
$dialog.dialog('open');
});
});
});