第二次执行 onclick 模式对话框后,Jquery 不清空部分 View

标签 jquery asp.net-mvc-3 asp.net-mvc-4

事实

  • 我有一个 mvc 项目。
  • 我正在使用jquery。

问题

$('#ModalData').empty();没有按我的预期工作。

详细信息

当我点击测试链接三次时,我得到 enter image description here

但是,hello world 应该被清空
$('#ModalData').empty(); 但事实并非如此。相反,每次我单击测试链接时,它都会打开模式对话框并创建一个新的 hello world。

另请注意,如果我在不使用部分 View 的情况下附加 html,则 jquery 为空。有什么帮助吗?

 $(".modal").on("click", function () {

        $.ajaxSetup({

        cache: false
    });
    $("#dialog-form").dialog("open");

    $('#ModalData').empty();//not working to well

    $.get("/MedicineManagement/GetModal/", function (data)
    { $("#ModalAjaxData").append(data); });
});


$("#dialog-form").dialog({
    autoOpen: false,
    height: 400,
    width: 550,
    modal: true,
    buttons: {
        "Modify Actual Potential": function () {


            if (true) {
                $(this).dialog("close");

            }
        },
        Cancel: function () {
            $(this).dialog("close");

        }
    },
    close: function () {


    }
});

Controller

     [HttpGet]
        public PartialViewResult GetModal()
        {
            return PartialView("_AddMedicineList");
        }

触发jquery的HTML

 <div id="dialog-form" title="Edit Actual Potential">
        <div class="ModalAjaxData" id="ModalAjaxData"></div>
    </div>
    <a href="#" class ="modal">test </a>

最佳答案

在 AJAX 成功回调中添加:

$("#ModalAjaxData").append(data);

而不是设置#ModalAjaxData div的html:

$("#ModalAjaxData").html(data);

此外,您似乎正在清空一些 #ModalData 元素,我在标记中的任何位置都看不到该元素,因此 $('#ModalData').empty(); 什么也不做。您的意思可能是 $('#ModalAjaxData').empty();。但是,如果您使用 $("#ModalAjaxData").html(data); 而不是附加,则不需要清空任何内容。

关于第二次执行 onclick 模式对话框后,Jquery 不清空部分 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11019165/

相关文章:

javascript - 在 asp.net mvc 中添加 JavaScript 文件

javascript - Chrome/Windows 7 上 JavaScript 的 Alt 键行为?

javascript - 加载资源失败:net::ERR_FILE_NOT_FOUND 加载 json.js

jquery - 如何从该元素的后代中选择具有指定类的最后一个元素?

asp.net-mvc - ControllerContext 为 null 并且在使用 Html.Action 时未调用 BaseController.OnActionExecuting()

Asp.net mvc用户管理

jquery - IE9 上的 .net mvc 和 jquery $.ajax

c# - 如何使用 knockout、jquery 和 ASP.NET MVC 创建可重用的控件?

c# - MVC4 脚本包缓存问题

javascript - 如何在 JQuery UI Datepicker 中使用不同的日期格式(用于在 html 上显示和存储在数据库中)?