自从NET 4.5验证程序使用数据属性和有界Javascript来进行验证工作,所以.NET希望您为jQuery添加脚本引用.
There are two possible ways to solve the error:
禁用UnobtrusiveValidationMode
:
将此添加到web.配置:
<configuration>
<appSettings>
<add key="ValidationSettings:UnobtrusiveValidationMode" value="None" />
</appSettings>
</configuration>
它将像以前一样工作.NET版本,只需向页面中添加必要的Javascript,即可使验证程序正常工作,而无需在jQuery文件中查找代码.这实际上是常见的解决方案.
另一个解决方案是注册脚本:
在全球.asax Application_Start
将映射添加到jQuery文件路径:
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
ScriptManager.ScriptResourceMapping.AddDefinition("jquery",
new ScriptResourceDefinition
{
Path = "~/scripts/jquery-1.7.2.min.js",
DebugPath = "~/scripts/jquery-1.7.2.js",
CdnPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.1.min.js",
CdnDebugPath = "http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.1.js"
});
}
MSDN的一些细节:
ValidationSettings:UnobtrusiveValidationMode指定ASP.网
如果此键值设置为"无"[默认值],则ASP.NET应用程序
如果此键值设置为"WebForms",则ASP.NET将使用HTML5数据属性和来自客户端验证逻辑的添加脚本引用的后期绑定JavaScript.