如何从我的c#代码后面打开jQuery UI对话框?

时间:2012-10-03 08:00:37

标签: c# asp.net jquery-ui-dialog

我正在尝试从我的ASP.NET c#Code Behind打开一个jQuery UI对话框。我已经创建了下面的代码,但我无法让它工作,并且不确定如何调试问题。我该如何解决这个问题?

我的JavaScript:

<script>
$(function () {
    $("#dialog_info").dialog("destroy");
    $("#dialog_info").dialog({
        autoOpen: false,
        modal: true,
        buttons: {
            Ok: function () {
                $(this).dialog("close");
            }
        }
    });
});
function show() {
    $("#dialog_info").dialog("open");
    return false;
}
</script>

我的HTML:

<body>
    <form id="form1" runat="server">
        <div>
            <div id="dialog_info" title="information">
                <asp:Literal ID="ltMessage" runat="server" Text="success"></asp:Literal>
            </div>
            <a href="#" id="message">open</a>
            <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
        </div>
    </form>
</body>

我的守则背后:

protected void Button1_Click(object sender, EventArgs e)
{
    ltMessage.Text = DateTime.Now.ToString();
    StringBuilder sb = new StringBuilder();
    //sb.Append("<script> ");
    sb.Append("show();");
    //sb.Append("</script>");
    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "key", sb.ToString(), true);
}

修改后的代码

function showMessage() {

        $(function () {
            $("#dialog_info").dialog("open");
        });
        return false;
    }

现在效果很好!