ASP.NET MVC 3和jquery.unobtrusive,ajax.min.js(ASP.N

2019-06-26 01:30发布

我想用Ajax.ActionLink的HTML帮助,因此我需要jquery.unobtrusive-ajax.min.js库,但IE总是显示此错误:

微软JScript运行时错误:无法设置属性“不显眼”的值:对象为空或未定义

我读过的解决方案是jquery.validate.min.js和jquery.validate.unobtrusive.min.js的用法,但我就不能识别服务器端Ajax调用。

Answer 1:

我读过的解决方案是jquery.validate.min.js和jquery.validate.unobtrusive.min.js的使用

不,这些脚本2无事可做与jquery.unobtrusive-ajax.min.js 。 它们被用于不引人注目的验证。 对于Ajax。*佣工所有你需要的是jQueryjquery.unobtrusive-ajax.min.js (包括顺序 )。

因此,对于不显眼的AJAX您需要:

<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>

如果您想使用不引人注目的验证你也可以包括2个脚本之后(按顺序 ):

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

你应该确保另一个非常重要的事情是,你已删除的绝对痕迹Microsoft*.js从项目的脚本。 这些脚本已过时,从ASP.NET MVC 3开始不再默认使用。 另外,还要确保挥霍启用不显眼的AJAX在你的web.config,否则系统会退回到传统的Microsoft AJAX脚本:

<appSettings>
    <add key="webpages:Version" value="1.0.0.0"/>
    <add key="ClientValidationEnabled" value="true"/>
    <add key="UnobtrusiveJavaScriptEnabled" value="true"/>
</appSettings>


Answer 2:

这是一个古老的职位,但如果有人需要在不显眼的阿贾克斯最新的,它可以在这里找到:

http://nuget.org/packages/Microsoft.jQuery.Unobtrusive.Ajax/3.0.0-beta2

有迹象表明,在最新的jQuery的lib工作的其他的稳定版本。



文章来源: ASP.NET MVC 3 and jquery.unobtrusive-ajax.min.js