我有一个 ASP.NET MVC 4 View ,它动态地将两个嵌套的部分加载到 <div>
中通过 JQuery AJAX 调用的元素。每个部分都有一大堆自己的 Javascript。为了让它全部正常工作,我目前在 success
中拥有所有 Javascript每个 AJAX 调用:
function LoadPartial(someImportantId) {
$.ajax({
url: '@Url.Action("LoadThePartial")' + '?id=' + someImportantId,
type: 'POST',
async: false,
success: function (result) {
$("#partialContainerDiv").html(result);
//here there be great piles of javascript
}
});
}
由于有两个部分,每个部分都需要数百行 Javascript,因此主视图文件越来越难以管理。我很想将所有这些脚本代码放入一个单独的 .js 文件中,但我对 Javascript 还很陌生,因此我严重依赖 Chrome 的脚本调试工具,而且我无法弄清楚如何(以及是否)我可以加载这个脚本文件。我试过:
- 将脚本包含添加到部分文件。在这种情况下, partial 的 Javascript 仍然不会在运行时加载,并且 apparently having includes in a partial view isn't a good idea anyway .
- 将脚本包含添加到主视图。这是行不通的。没有任何 部分的 Javascript 正确附加,这在 同步级别。
有什么方法可以让我为 AJAX 加载的部分文件创建一个单独的 Javascript 文件,并且仍然能够在客户端调试该部分文件?更重要的是,我应该将用于 AJAX 加载的局部 View 的所有这些 Javascript 放在哪里?
最佳答案
将部分脚本包装在主页中包含的函数中;在 AJAX 成功处理程序中调用该函数,在您的部分加载后执行脚本。
关于使用 AJAX 加载的 Javascript 和 MVC4 部分 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13994923/