Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 在MVC3必填字段中点击非字符键将触发验证?_Asp.net Mvc 3_Validation_Model_Asp.net Mvc Validation - Fatal编程技术网

Asp.net mvc 3 在MVC3必填字段中点击非字符键将触发验证?

Asp.net mvc 3 在MVC3必填字段中点击非字符键将触发验证?,asp.net-mvc-3,validation,model,asp.net-mvc-validation,Asp.net Mvc 3,Validation,Model,Asp.net Mvc Validation,我注意到,在登录视图中,当用户输入他们的电子邮件地址并快速切换到密码字段时,就会触发MVC3必需属性验证。我拥有的代码相当大,但我能够用一个非常简单的页面重现它。它类似于以下内容: 我有一个非常基本的看法与模型附加。该模型有两个属性,它们都具有[Required]属性。如果您聚焦一个字段,并按任何未输入任何字符的键(例如,Shift、Esc等),将触发所需的验证,我会收到错误消息,指出该字段是必需的,即使我尚未输入任何内容 有人知道如何防止触发此早期验证吗?同意gdordon-禁用/修复任何jq

我注意到,在登录视图中,当用户输入他们的电子邮件地址并快速切换到密码字段时,就会触发MVC3必需属性验证。我拥有的代码相当大,但我能够用一个非常简单的页面重现它。它类似于以下内容:

我有一个非常基本的看法与模型附加。该模型有两个属性,它们都具有[Required]属性。如果您聚焦一个字段,并按任何未输入任何字符的键(例如,Shift、Esc等),将触发所需的验证,我会收到错误消息,指出该字段是必需的,即使我尚未输入任何内容


有人知道如何防止触发此早期验证吗?

同意gdordon-禁用/修复任何jquery验证。另外,您可以通过禁用不引人注目的验证(在web.config中)来禁用此行为-这通常是启用的,并使用jquery进行客户端验证。

因此,我所做的是使用以下代码禁用这些输入字段的keyup事件:

<script type="text/javascript">
    $(document).ready( function() {
        $("input[data-val-required]").keyup(function () {
            return false;
        });
    });
</script>

$(文档).ready(函数(){
$(“输入[需要数据值]”).keyup(函数(){
返回false;
});
});

这允许客户端验证仅在用户点击提交按钮时关闭。。。这不是MVC,这是jquery验证插件。是的,我完全是这个意思,不知道我为什么说MVC验证。我仍然想要客户端验证,它只是早期验证,我需要在输入随机字符时不验证