2013-07-18 63 views
0

我在我的HTML按钮,一旦点击按钮,我想开一个jQuery对话框。 我有一个工作正常的代码版本,但我只是想重新组织代码,似乎有什么问题,因为对话框不能再显示。不工作无法打开JQuery的对话框

<script type="text/javascript"> 
$(function() { 
    $('#dialog_trigger').on("click", function() { 
     $('#dialog').load('index.php', function() { 
      $('#dialog').dialog({ 
      *********(somehow I must remove 'autoOpen: false' here, otherwise it also stops working) ******** 

       position: 'center', 
       width : 480, 
       height : 320, 
       modal : true 
      }); 

     }); 
     }); 
    }); 

</script> 

<body> 
<button id="dialog_trigger">Click me</button> 
<div id="dialog"></div> 
</body> 

代码:

的作品版本

<script type="text/javascript"> 
$(function() { 
    $('#dialog_trigger').on("click", function() { 
     $('#dialog').load('index.php', function() { 
      $('#dialog').dialog("open") 
     }); 
    }); 

    $('#dialog').dialog({ 
    autoOpen: false, 
    position: 'center', 
    width : 480, 
    height : 320, 
    modal : true 
    }); 

}); 

</script> 

<body> 
<button id="dialog_trigger">Click me</button> 
<div id="dialog"></div> 
</body> 

请帮我纠正它,谢谢。

+0

'$( '#对话' ).dialog(“”)'I不要认为这是正确的,你真的想在那里做什么? – Ohgodwhy

+0

opps,抱歉,复制错误,最初是$('#dialog')。dialog(“open”)。修复。 – user1453951

回答

2

首先为dialog签名移动到单击事件之外。

然后在点击事件中,你可以使用

$('#dialog').dialog("open") 

显示对话框

Check Fiddle

代码

$('#dialog_trigger').on("click", function() { 
     $('#dialog').load('index.php').dialog("open") 
    }); 

    $('#dialog').dialog({ 
    autoOpen: false, 
    position: 'center', 
    width : 480, 
    height : 320, 
    modal : true 
    }); 
+0

对不起,之前有一个复制错误,我在click事件中调用了“$('#dialog')。dialog”(“open”)“,并在外面定义了对话框。然而,这不起作用,我的意思是,在我点击按钮后,没有任何反应。 – user1453951

+0

和Sushanth,我想将一个网页加载到对话框中,请参阅我的第一个代码版本,可以根据我想要的第一个代码修复第二个代码吗? – user1453951

+0

@ user1453951。为什么不试试这个'$(“#对话”)。负载(“的index.php”)。对话框(“开放”)' –