相关疑难解决方法(0)

在部分视图中包含JavaScript文件

我想知道在部分视图中包含javascript文件的最佳做法是什么.一旦渲染,这将最终作为我的页面的html中间的js包含标记.从我的角度来看,这不是一个很好的方法.它们属于head标签,因此不应阻止浏览器一次性呈现html.

一个例子: 我在'PictureGallery'局部视图中使用了一个jquery picturegallery插件,因为这个局部视图将在几个页面上使用.这个插件只需要在使用这个视图时加载,我不想知道每个局部视图使用哪些插件......

谢谢你的回答.

javascript asp.net-mvc jquery partial-views

69
推荐指数
1
解决办法
4万
查看次数

在用户控件中链接JavaScript库

我已经使用ASP.NET MVC大约六个月了,并且已经查看了那些微软人员创建的Nerd Dinner示例.我注意到他们在启用AJAX到RSVP晚餐时所做的一件事就是将用户控件中的JavaScript引用用于RSVP.
(文件:RSVPStatus.ascx)

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<NerdDinner.Models.Dinner>" %>

<script src="/Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="/Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>    
Run Code Online (Sandbox Code Playgroud)

这对我来说似乎不对,因为我很有可能在其他地方使用这些相同的库,例如登录验证.另外,如果我更改脚本版本,我需要搜索所有对库的引用.

所以我问我的想法是否正确,这些引用实际上应该在主页的中心位置?

请让我知道最佳做法是什么,如果有的话,还有利弊.

javascript asp.net-mvc

8
推荐指数
1
解决办法
6227
查看次数

用AJAX加载的Javascript和MVC4部分视图

我有一个ASP.NET MVC 4视图,它<div>通过JQuery AJAX调用动态地将两个嵌套的部分加载到元素中.每个部分都有一大堆自己的Javascript.为了让它全部正常工作,我目前拥有success每个AJAX调用中的所有Javascript :

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
        }
    });
}
Run Code Online (Sandbox Code Playgroud)

由于这些部分中有两个,每个需要数百行Javascript,因此主视图文件变得难以管理.我很乐意把所有这些脚本代码放到一个单独的.js文件中,但我仍然对Javascript很新,我非常依赖Chrome的脚本调试工具,而且我很难搞清楚如何(以及如果)我可以加载此脚本文件.我试过了:

调试器中没有脚本

  • 添加脚本包括主视图.这不起作用.部分的Javascript都没有正确附加,这在同步级别上是有意义的.

东西不起作用

有没有办法我可以为AJAX加载的部分单独的Javascript文件,仍然能够调试客户端上的部分?更重要的是,我在哪里将所有这些Javascript用于AJAX加载的部分视图?

javascript debugging jquery partial-views asp.net-mvc-4

6
推荐指数
1
解决办法
7373
查看次数