[英]MVC3 JQuery modal dialog retains content on close and reopen
我有一个jquery模态,它呈现部分视图,但是当将数据输入到视图中并关闭(不保存,只需关闭对话框)时,内容将保留在视图中。 因此,下次打开模态时,与第一次关闭模态时相同。
有没有一种方法可以强制模态渲染原始局部视图或使其执行此操作? 我尚未发布部分视图内容,因为它只是一个带有字段的简单表单。
视图
<div id="client-detail-modal" title="Add New Address">
@Html.Partial("_Address", address)
</div>
JQuery的
$("#client-detail-modal").dialog({
modal: true,
autoOpen: false,
height: 'auto',
width: 600,
position: ['middle', 20],
buttons: {
"Add Address": function () {
$(this).dialog("close");
},
Cancel: function () {
$(this).dialog("close");
}
}
});
$('#client-detail-modal').css('height', 'auto');
引发剂
$("#client-detail-modal").dialog("open");
$('#myModal')
.on('hide.bs.modal',
function() {
$('#myModal').removeData();
});
将此代码插入*.cshtml.
上的脚本部分*.cshtml.
这将删除数据,并且在您下次打开数据时,它们将创建一个新数据。
当您将部分视图渲染到页面中时,它将html渲染到您的主dom中。 使用jquery对话框时,它将采用部分视图并在对话框中显示。 进行更改时,您将修改原始视图。 您应该在对话框打开事件中清除所有旧值或加载默认值,并在对话框关闭事件中保存新值。 这样,您可以多次重用同一对话框。
http://api.jqueryui.com/dialog/#method-open http://api.jqueryui.com/dialog/#method-close
以此为例,查看源代码http://jqueryui.com/dialog/#modal-form在关闭事件中,它们会删除所有旧数据并清除所有错误
close: function() {
allFields.val( "" ).removeClass( "ui-state-error" );
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.