我的登录页面中有一个文本框和密码控件,下面是我的视图,
@Html.TextBoxFor(m => m.Login)
@Html.PasswordFor(m => m.Password)
我已经编写了jquery来验证上面的两个字段,
$('#txtLogin').blur(function () {
if ($('#txtLogin').val() == '') {
$('#LoginError').html("Please enter email address.");
return false;
} else {
return true;
}
});
$('#txtPassword').blur(function () {
if ($('#txtPassword').val() == '') {
$('#LoginError').html("Please enter password.");
return false;
} else {
return true;
}
});
我想知道为什么这不仅仅适用于IE9?它在IE10和safari 5.1中完美运行
答案 0 :(得分:1)
在MVC第一件事你需要确保在web.config
下面<add key="UnobtrusiveJavasScriptEnable" value="true"/>
然后将jquery unobstrusive库添加到您的模型中,尤其是在MVC中尝试将jquery放在单独的文件中并将文件引用到视图中。
仅添加验证jquery库是不够的,在mvc中添加unobstrusive验证库也是不够的。
如果它仍然无效,那么尝试从html控件本身调用jquery onblur函数,如下所示。我想这与浏览器问题有关。
@Html.TextBoxFor(m => m.Login,new {"onblur","txtLogin_onbluur"})