6
我有一个ASP.NET MVC 4视图,它通过JQuery AJAX调用动态地将两个嵌套的部分加载到<div>
元素中。每个部分都有自己的一大堆Javascript。为了得到这一切的工作,我公司目前拥有的所有JavaScript中的每个AJAX调用的success
:使用AJAX加载Javascript和MVC4部分视图
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的脚本调试工具,而且我很难弄清楚如何(以及如果)我可以加载这个脚本文件。我试过了:
- 将脚本添加到部分文件。在这种情况下, 偏好的Javascript仍然不会在运行时加载,并且apparently having includes in a partial view isn't a good idea anyway。
- 添加脚本包括到主视图。这不起作用。没有 的部分的Javascript附加正确,这是有道理的 同步级别。
有什么办法,我可以有一个AJAX一个单独的JavaScript文件加载部分,仍然能够调试部分在客户端上?更重要的是,我在哪里可以将所有这个Javascript加载到AJAX加载的部分视图中?
有没有一种方法可以把这些功能放在一个单独的脚本文件中? –
是;基本上你会将你的整个_DiagnosticAssessment.js_文件包装在一个已命名的函数中,然后通过名称调用该函数来执行代码。 – Mathletics
不幸的是,我在Javascript中有很多剃刀语法调用(比如'@ Url.Action()')。幸运的是,我想我可以通过http://stackoverflow.com/q/4624626/27457帮助解决这个问题。谢谢! –