我有以下问题: 我使用对话框在其中显示不同的页面/内容,但是当打开两个不同的对话框时,它会崩溃并且无法再次打开它们。只要打开一个盒子,一切都很好,甚至可以打开多次。当我打开第二个对话框时,它们都不能重新打开。我已经尝试过" destroy"关闭时的对话框(如Jquery Dialog opening multiple dialogs所示),但它没有帮助,我仍然只能打开每个盒子的一个实例,当打开两个不同的实例时,它会崩溃并且它们都不会重新打开。
我在html中有类似的东西:
<ul>
<li><a href="javascript:void(0)" id="link1">link1 title</a></li>
<li><a href="javascript:void(0)" id="link2">link2 title</a></li>
</ul>
然后在javascript中:
$("#link1").click(function () {
$(function () {
$('<div>').dialog({
modal: false,
open: function ()
{
$(this).load('somePage.php');
},
height: 500,
width: 1300,
title: 'title1'
});
});
});
$("#link2").click(function() {
$(function () {
$('<div>').dialog({
modal: false,
open: function ()
{
$(this).load('otherPage.html');
},
height: 535,
width: 880,
title: 'title2'
});
});
});
答案 0 :(得分:1)
您的$(function () {
不在正确的位置:
$(function () {
$("#link1").click(function () {
$('<div>').dialog({
modal: false,
open: function ()
{
$(this).load('somePage.php');
},
height: 500,
width: 1300,
title: 'title1'
});
});
$("#link2").click(function() {
$('<div>').dialog({
modal: false,
open: function ()
{
$(this).load('otherPage.html');
},
height: 535,
width: 880,
title: 'title2'
});
});
});
$(function() {…}
内的代码在文档加载时执行,这是在我们的HTML元素上注册事件处理程序的最佳时机。