繁体   English   中英

MVC3 JQuery模态对话框在关闭并重新打开时保留内容

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM