单击时不打开JQuery Dialog

时间:2012-03-14 17:29:01

标签: jquery dialog

我在按钮点击时打开一个jquery对话框。我打开面板作为对话框。 在该面板中有iframe,在iframe src中我调用了新页面。 弹出窗口第一次正常打开。 我正在关闭弹出窗口并单击按钮再次打开弹出窗口。 当我第二次打开弹出窗口时,我遇到了2个问题

  1. 如果我点击按钮第一次弹出窗口没有打开。如果我再次单击第二次按钮,则弹出窗口打开。 Popup在第二次点击时打开,但在第一次点击时不打开。我无法找到为什么弹出窗口没有单击打开并双击打开。

  2. 我在弹出窗口中有TextBox控件。当我在IE中第二次打开弹出窗口时,此TextBox控件处于禁用状态。如果我点击按钮单击该页面中的任何服务器端事件,则启用TextBox控件。在Mozilla Firefox中,它运行正常。 TextBox控件始终处于启用状态。

  3. 请让我知道如何解决这个问题。

    我的jquery功能如下

    function OpenPopupTest()
    {
        $("#PanelTest").dialog(
        {                    
            minWidth: 500,
            minHeight: 500
        });
    }
    

    我打电话给以下小组

    <asp:Panel ID="PanelTest" runat="server" Style="display: none; background-color: White;
        font-size: 12px;">
        <div id="DivTst" style="text-align: left; margin-top: 20px; margin-left: 10px">
            <iframe id="iframeTest" src="Test1.aspx" height="400px" width="400px"></iframe>
            <br />
        </div>
    </asp:Panel>
    
    <button ID="ButtonTest" runat="server" Value="Open Popup" />
    

    此按钮位于更新面板内。

    在botton属性后面的代码我调用了javascript函数。     ButtonTest.Attributes.Add( “点击”, “OpenPopupTest()”);

    非常感谢任何帮助。

    先谢谢。

    此致 Rahul Rathi

1 个答案:

答案 0 :(得分:0)

您的对话方式不正确。对于可重复使用的对话框,您希望在页面加载时对其进行初始化,然后仅使用按钮将其打开

/* initialize dialog on page load*/
$(function(){
    $("#PanelTest").dialog(
    {                    
        minWidth: 500,
        minHeight: 500,
        autoOpen: false
    });    
});

function OpenPopupTest()
{
    $("#PanelTest").dialog('open')
}