带有jQuery对话框的.NET登录控件不工作?

带有jQuery对话框的.NET登录控件不工作?,jquery,.net,jquery-ui,login-control,jquery-dialog,Jquery,.net,Jquery Ui,Login Control,Jquery Dialog,我在jQuery对话框中设置了一个登录控件。但是,登录按钮在对话框中不起作用,当我删除对话框时,它可以正常工作。用户名和密码上有一些字段验证器可以进行javascript验证,因此我认为可能存在一些冲突,但我无法解决。有什么想法吗 这是我的标记: <div id="loginBox"> <asp:Login ID="LoginUser" runat="server" EnableViewState="false" RenderOuterTable="false">

我在jQuery对话框中设置了一个登录控件。但是,登录按钮在对话框中不起作用,当我删除对话框时,它可以正常工作。用户名和密码上有一些字段验证器可以进行javascript验证,因此我认为可能存在一些冲突,但我无法解决。有什么想法吗

这是我的标记:

<div id="loginBox">
<asp:Login ID="LoginUser" runat="server" EnableViewState="false" RenderOuterTable="false">
    <LayoutTemplate>
        <span class="failureNotification">
            <asp:Literal ID="FailureText" runat="server"></asp:Literal>
        </span>

        <div class="accountInfo" style="float: left; width: 220px;">
            <fieldset class="login">
                    <asp:Label ID="UserNameLabel" runat="server" AssociatedControlID="UserName">Username:</asp:Label>
                    <asp:TextBox ID="UserName" runat="server" CssClass="textEntry" Width="190"></asp:TextBox>
                    <asp:RequiredFieldValidator ID="UserNameRequired" runat="server" ControlToValidate="UserName"
                        CssClass="red-text" ErrorMessage="User Name is required." ToolTip="User Name is required."
                        ValidationGroup="LoginUserValidationGroup">*</asp:RequiredFieldValidator>
                    <asp:Label ID="PasswordLabel" runat="server" AssociatedControlID="Password" >Password:</asp:Label>
                    <asp:TextBox ID="Password" runat="server" CssClass="passwordEntry" TextMode="Password" Width="190"></asp:TextBox>
                    <asp:RequiredFieldValidator ID="PasswordRequired" runat="server" ControlToValidate="Password"
                        CssClass="red-text" ErrorMessage="Password is required." ToolTip="Password is required."
                        ValidationGroup="LoginUserValidationGroup">*</asp:RequiredFieldValidator><br/>
                    <asp:CheckBox ID="RememberMe" runat="server" style="display: inline-block;" />
                    <asp:Label ID="RememberMeLabel" runat="server" AssociatedControlID="RememberMe" style="display: inline-block; font-weight: normal;">Remember Me</asp:Label>
            </fieldset>

            <p class="submitButton">
                <asp:Button ID="LoginButton" runat="server" CommandName="Login" Text="Log In" ValidationGroup="LoginUserValidationGroup" />
            </p>
        </div>
        <div style="float: left; width: 170px; padding-top: 15px;">
         <asp:ValidationSummary ID="LoginUserValidationSummary" runat="server" CssClass="red-text" ValidationGroup="LoginUserValidationGroup" />
        </div>
        <div class="clearfix"></div>
    </LayoutTemplate>
</asp:Login>
</div>

用户名:
*
密码:
*
记得我吗

jQuery:

<script type="text/javascript">
$(document).ready(function () {

    // Dialog
    $('#loginBox').dialog({
        autoOpen: true,
        width: 420,
        modal: true,
        draggable: false,
        title: "<h2 style='margin-bottom: 0px;'>Log In</h2>",
        closeOnEscape: false,
        open: function(event, ui) { $(".ui-dialog-titlebar-close").hide(); },
        resizable: false,
        show: { effect: "fade", duration: 1500 }
    });
})
</script>

$(文档).ready(函数(){
//对话
$(“#登录框”)。对话框({
自动打开:对,
宽度:420,
莫代尔:是的,
可拖动:错误,
标题:“登录”,
closeOnEscape:错误,
打开:函数(事件,ui){$(“.ui对话框标题栏关闭”).hide();},
可调整大小:false,
显示:{效果:“褪色”,持续时间:1500}
});
})
代码隐藏文件中没有任何内容。我注意到,当我在呈现页面后检查登录按钮时,它上面有以下内容:

<input type="submit" name="ctl00$mainbody$LoginUser$LoginButton" value="Log In" onclick="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$mainbody$LoginUser$LoginButton&quot;, &quot;&quot;, true, &quot;LoginUserValidationGroup&quot;, &quot;&quot;, false, false))" id="mainbody_LoginUser_LoginButton">


因此,我猜测javascript出现在对话框中时,出于某种原因没有运行,但我不确定如何修复它。

可能“对话框”位于页面中“表单”标记的外部/下方。使用Firebug或其他工具检查我是对的。如果是这样,请通过javascript重新连接服务器端控件以形成表单。

可能“对话框”位于页面中“表单”标记的外部/下方。使用Firebug或其他工具检查我是对的。如果是这样,请通过javascript重新连接服务器端控件以形成表单。

以下是我在使用jQuery UI对话框时发现的一些附加信息。可能会有帮助。

以下是我在使用jQuery UI对话框时发现的一些附加信息。可能会有帮助。

这似乎是个问题,但如何通过javascript将控件重新附加到表单?不管我如何使用:
$('#loginBox').parent().appendTo(jQuery('form:first')
这似乎是个问题,但如何通过javascript将控件重新附加到表单?不管我使用的是什么:
$('#loginBox').parent().appendTo(jQuery('form:first')