我们有一个包含许多必填字段的表单。当我在必填字段上并且按下回车键时,表单不会提交。但是,如果我在不需要的字段上,按Enter键确实提交表单。这是有问题的,因为提交表单会触发验证以在顶部显示验证摘要。如果我在必填字段上,则不会触发此验证。它确实似乎触发它自己的验证并显示我的错误文本(这只是一个星号),但人们没有看到这一点。
有没有人知道为什么非必填字段输入密钥会提交表单但是必填字段输入密钥不会?
答案 0 :(得分:0)
根据您的描述,听起来您正在使用服务器端验证。尝试在验证器上将EnableClientScript
设置为false,这将禁用客户端验证。
如果这还不够,您可以在单击提交按钮时覆盖验证:
<script type="text/javascript">
validateForm = function(){
var isValid = Page_ClientValidate("");
if (isValid){
//some custom logic if needed
}
return true; //do the postback even if validation fails?
//otherwise return isValid
}
</script>
<asp:Button ID="Button1" runat="server" OnClientClick="return validateForm();" ... />