2012-02-28 88 views
1

我正在使用jquery对话框,但dialog.open()不显示对话框。 (该网站只适用于IE 7 & 8,所以我不能看到对话框是否实际显示。)JQuery模态对话框未打开或显示

我已经确保这些依赖关系可用:jquery-ui.css;的jquery-UI-1.8.16.custom.min.js; https://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js

在标记:我会在文件准备好方法对话框:

变量$对话框;

$(document).ready(function() { 
    $dialog = $("#dialog") 
     .dialog({ 
      autoOpen: false, 
      title: 'My Modal Dialog', 
      position: 'center', 
      modal: true, 
      closeOnEscape: true, 
      buttons: [{ text: "Close", click: function() { $(this).dialog("close"); } }] 
     }); 
}); 

另一个JavaScript函数包含这些行到“开放”的对话框。当我检查的对话框中,它是一个对象,但我从来没有看到它。

function showDialog() { 
    $dialog.html("Hello World"); 
    $dialog.dialog('open'); 
} 

代码看起来声音,在另一个我工作过的项目中,工作顺利,所以这让我认为它是开放的,但是由于某种原因我看不到它,有没有人遇到过这个问题,或者找到了解决方案?

谢谢你提供的任何帮助。

回答

1

您是否制作父元素:

<div id="dialog">.. 

的文件?

+0

我没有使用父元素,在这个例子中或者在这个代码没有工作的页面的标记中。另外,我还没有看到jQuery对话框的其他“成功”实现使用父元素。我如何将一个元素指定为$对话框的父项? – user874705 2012-02-28 20:05:49

+0

这里写着:'$ dialog = $(“#dialog”)' - 用id为“dialog”的元素创建对话框。你需要在你身体的任何地方都有'

'。 – 2012-02-28 20:17:31

+0

谢谢,那是问题所在。 (我想知道为什么对话在我的调用函数中显示为一个有效的对象?) – user874705 2012-02-28 20:44:17