Ajax 返回部分视图,失去 JavaScript 功能

问题描述 投票:0回答:2

我会尽可能更新一些代码示例,但我只是在寻找任何人都可能有的一些一般建议。

我有一个使用部分视图的 ASP.Net MVC 站点。我的所有脚本都在 BundleConfig 文件中,并且它们被加载到 _Layout 页面中。我有部分视图,其中包括一些与 JavaScript 相关的控件、DropZone 和可拖动 div 等。使用 Ajax,我在控制器中调用一个方法来加载部分视图。然而,当 Ajax 加载部分视图时,我失去了所有 Javascript 功能。

在使用严重依赖 javascript 的部分视图时,是否应该采用更简洁或更简单的方法?

非常感谢您的帮助!

javascript jquery asp.net ajax asp.net-mvc
2个回答
0
投票

谢谢各位,已经解决了。我将 javascript 放在部分视图上的函数中,并在 ajax 返回后进行了一个简单的调用来运行所有 js。


0
投票

在 ASP.NET MVC 中,如果您想在每次渲染分部视图时执行 JavaScript 代码,可以使用 ajaxComplete 事件来检测 AJAX 请求(通常是分部视图的加载方式)何时完成,然后运行相应的 JavaScript 代码。

具体操作方法如下:

$(document).ajaxComplete(function(event, xhr, settings) {
    // Check if the AJAX request is for loading the partial view
        // Your JavaScript code to run when the partial view is rendered
        console.log("Partial view rendered, executing JavaScript...");
        yourFunction(); // Call your function here, or put your code directly here
    }
});
© www.soinside.com 2019 - 2024. All rights reserved.