我错过了哪个jquery参考

时间:2012-02-01 22:29:15

标签: jquery asp.net-mvc-3 razor

我有一个使用jquery的剃刀cshtml视图。在某些用户操作期间出现以下错误。

  

Microsoft JScript运行时错误:无法获取属性的值   'unobtrusiveValidationAttributes':object为null或undefined

发生错误时,调试器会中断 MVCx.GetEditorByElement(b).unobtrusiveValidationAttributes [c + this]}); 从以下代码行

 function(b,i){var d=a(b),f=d.parents("form")[0],c,e,g;if(!f)return;c=a(f).data("unobtrusiveValidation");c.options.rules[b.name]=e={};c.options.messages[b.name]=g={};a.each(this.adapters,function(){var c="data-val-"+this.name,i=MVCx.GetEditorByElement(b).unobtrusiveValidationAttributes[c],h={};if(i!==undefined){c+="-";a.each(this.params,function(){h[this]=MVCx.GetEditorByElement(b).unobtrusiveValidationAttributes[c + this]});this.adapt({element:b,form:f,message:i,params:h,rules:e,messages:g})}});jQuery.extend(e,{__dummy__:true});!i&&c.attachValidation()}

我的理论是错误是由于我可能没有引用某些JQuery文件(缺少一些<script src="@Url.Content("~/ApplicationScripts/JQuery/jquery-1.4.4.min.js")" type="text/javascript"></script>.

假设它缺少jquery引用,解决它的一种方法是添加所有jquery引用(显然是乏味的)。我想知道是否有更好的方法来查找实际需要哪个jquery引用。

更新 这就是我现在设置的参考资料

<script src="@Url.Content("~/ApplicationScripts/JQuery/jquery-1.4.4.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/ApplicationScripts/JQuery/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/ApplicationScripts/JQuery/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/ApplicationScripts/JQuery/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>

1 个答案:

答案 0 :(得分:1)

ASP.NET MVC 3附带jquery-1.5.1.js。您似乎正在使用jquery-1.4.4.min.js。我不确定jquery.validate插件和其他不显眼的脚本是否与此版本的jQuery兼容。尝试使用创建新应用程序时提供的默认脚本。