在jquery ui对话框关闭功能上使用jquery提交表单
我的jquery ui对话框上有一个按钮,如下所示:在jquery ui对话框关闭功能上使用jquery提交表单,jquery,asp.net-mvc,jquery-ui,Jquery,Asp.net Mvc,Jquery Ui,我的jquery ui对话框上有一个按钮,如下所示: <div id="dialog-confirm" title="Multiple Account Login" style="display: none;"> <a class="close-btn" href="#" id="A16"> <img src="../../Content/NewDesign/images/cross.png" width="28" heig
<div id="dialog-confirm" title="Multiple Account Login" style="display: none;">
<a class="close-btn" href="#" id="A16">
<img src="../../Content/NewDesign/images/cross.png" width="28" height="28" alt="close dialog" onclick="closeMultipleAccountDialog();" /></a>
<div class="clear-n">
</div>
</div>
此功能需要提交一份表格:
<form action="../Account/SetAccount" method="post" id="frmsetAccount">
<div class="flds-up">
<div class="lft-txt">
Account <span>:</span></div>
<div class="user-fld">
<%= ViewData["MyAccountsList"] %>
</div>
<div class="clear-n">
</div>
<input type="hidden" id="hdfAccount" name="hdfAccount" value="" />
<input type="hidden" id="hdPage" name="hdPage" value="" />
<input type="hidden" id="hdID" name="hdID" value="" />
<input type="hidden" id="hdPSSWD" name="hdPSSWD" value="" />
<input type="hidden" id="hdACCID" name="hdACCID" value="" />
<input type="hidden" id="hdPASSWDINT" name="hdPASSWDINT" value="" />
</form>
and dialog code is like this:
$("#dialog-confirm").dialog({
autoOpen: true,
resizable: true,
modal: true,
width: 458,
Height: 184,
buttons: {
"Login": function () {
$(this).dialog("close");
$("#hdfAccount").val("login");
$("#hdPage").val("151API");
$("#hdPage").val("151API");
$("#hdID").val($("#ID").val());
$("#hdPSSWD").val($("#PSSWD").val());
$("#hdACCID").val($("#ACCID").val());
$("#hdPASSWDINT").val($("#PASSWDINT").val());
$("#frmsetAccount").submit();
}
},
open: function (event) {
$('.ui-dialog-buttonpane').find('button:contains("Login")').focus();
$('.ui-dialog-buttonpane').find('button:contains("Login")').addClass('customokbutton');
},
close: function (event) {
closeMultipleAccountDialog();
}
});
账户:
对话框代码如下所示:
$(“#对话框确认”)。对话框({
自动打开:对,
可调整大小:正确,
莫代尔:是的,
宽度:458,
身高:184,
按钮:{
“登录”:函数(){
$(此).dialog(“关闭”);
$(“#hdfAccount”).val(“登录”);
$(“hdPage”).val(“151API”);
$(“hdPage”).val(“151API”);
$(“#hdID”).val($(“#ID”).val());
$(“#hdPSSWD”).val($(“#PSSWD”).val());
$(“#hdACCID”).val($(“#ACCID”).val());
$(“#hdPASSWDINT”).val($(“#PASSWDINT”).val());
$(“#frmsetAccount”).submit();
}
},
打开:功能(事件){
$('.ui dialog buttonpane').find('button:contains(“Login”)).focus();
$('.ui dialog buttonpane').find('button:contains(“Login”)).addClass('customokbutton');
},
关闭:功能(事件){
closeMultipleAccountDialog();
}
});
它适用于登录按钮和表单提交,但不适用于对话框关闭。请为我推荐一个解决方案。由于jquery ui代码中的
事件。preventDefault()
uiDialogTitlebarClose = $( "<a href='#'></a>" )
.addClass( "ui-dialog-titlebar-close ui-corner-all" )
.attr( "role", "button" )
.click(function( event ) {
event.preventDefault();
that.close( event );
})
uiDialogTitlebarClose=$(“”)
.addClass(“ui对话框标题栏关闭ui角全部”)
.attr(“角色”、“按钮”)
。单击(功能(事件){
event.preventDefault();
结束(事件);
})
使用对话框(“关闭”)时。它将关闭对话框并阻止与单击事件关联的所有其他功能。您可以删除它,您的代码将正常工作,但也将激活以前阻止的链接
uiDialogTitlebarClose = $( "<a href='#'></a>" )
.addClass( "ui-dialog-titlebar-close ui-corner-all" )
.attr( "role", "button" )
.click(function( event ) {
event.preventDefault();
that.close( event );
})