javascript - MVC 部分 View Javascript

标签 javascript asp.net-mvc partial-views asp.net-mvc-partialview partialviews

我创建了一个部分 View 以供重复使用。该部分 View 有一个使用选择插件的下拉列表。因此,在部分 View 中,我引用了所选的 js/css 文件以及一些 javascript 代码以准备文档。

它按预期工作。但是,现在我有一个页面,可以在按钮单击事件时呈现部分 View 。用户可以根据需要多次点击。

我担心的是,每次单击按钮时都会加载重复的 js。这或许就是人们不建议直接在 Partial View 中添加 js 的原因。就我而言,它需要用于部分 View 本身内的插件和操作。有没有一个好的方法来检查加载的js并防止它在后续的点击事件中再次加载?

最佳答案

首次加载页面时,所选的 JavaScript 和 CSS 文件应包含在页面上。当用户单击按钮时,进行 Ajax 调用以包含部分内容。在 AJAX 请求的成功回调中,初始化刚刚注入(inject)到页面中的下拉列表的选择插件代码。

您是正确的,重复的 JS 和 CSS 文件将被加载,这绝对是您不想要的。

$.ajax(...)
    .done(function(data) {
        $("#foo")
            .html(data)
            .find("select")
            .each(function() {
                $(this).chosen({...});
            });
    });

关于javascript - MVC 部分 View Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27410367/

相关文章:

javascript - $ ('' ).switchClass 如果切换类包含颜色属性,则在 IE8 中抛出错误

c# - 如何从流中获取字符串数组值?

c# - 在 MVC 中显示数据库中的图像

visual-studio-2010 - 命名空间 'Model'的类型在命名空间中不存在

javascript - 使用 React 功能组件作为类型

javascript - jQuery .load 结果到 'calling' div(而不是指定的 id)?

javascript - 从重复对象数组中返回最新值

javascript - angularjs 使用多个数组以 json 格式将数据发送到 mvc Controller

asp.net-mvc-3 - 如何在包含 Ajax.beginForm 的部分 View 中使用 MVC3 的内置验证

javascript - 使用 jquery 加载和插入 ASP.NET 分部 View