asp.net 表单“onsubmit”事件不等待验证函数返回

ivqmmu1c  于 2022-12-15  发布在  .NET
关注(0)|答案(1)|浏览(131)

我有一个html基本表单,在表单最终提交之前,我有一些字段需要验证,然而,即使我的验证函数被表单的“onsubmit”事件调用,它实际上也不会在提交完成之前执行。最后,由于html表单甚至在验证方法完成之前发送了无效数据,我从后端收到了大量错误。
通过浏览器中的devtools调试我的页面,我可以看到我的验证函数被调用了,然而,提交的发生就像是异步的,非常类似于 AJAX 调用。
我的表单代码:

<form id="frmOrder" onsubmit="return val();">
</form>

我的JavaScript验证方法:

<script type="text/javascript">

        function val() {
            var phone = document.getElementById("inputPhone");
            var date = document.getElementById("inputdate");

            if (phone.length < 10) {
                return false;
            }
         
            return true;
        };
    </script>

我试过不同的触发器,比如:将<button>标记与type ="submit"一起使用或通过onsubmit事件调用该方法而不返回“onsubmit='validate()'”

disho6za

disho6za1#

您必须添加.value,当您使用document.getElementById时,您将获得整个HTML元素。

var phone = document.getElementById("inputPhone").value;

    var date = document.getElementById("inputdate").value;

相关问题