Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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
Javascript 在jQuery诱导的表单提交后进行本机HTML验证触发?_Javascript_Jquery - Fatal编程技术网

Javascript 在jQuery诱导的表单提交后进行本机HTML验证触发?

Javascript 在jQuery诱导的表单提交后进行本机HTML验证触发?,javascript,jquery,Javascript,Jquery,我试图在暂停提交后将一些手动验证绑定到jQuery中的on('submit')事件,但仍让它执行浏览器的本机HTML验证。然而,我无法让它工作 这是我的基本代码: <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>Prevent Form Submission</title> </head> <body

我试图在暂停提交后将一些手动验证绑定到jQuery中的
on('submit')
事件,但仍让它执行浏览器的本机HTML验证。然而,我无法让它工作

这是我的基本代码:

<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Prevent Form Submission</title>
</head>
<body>
    <form>
        <input type="text" name="example" required>
        <input type="submit">
    </form>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script>
        $(document).on('click', 'input[type=submit]', function(e) {
            e.preventDefault();
            // Do something here
            $('form').submit();
        });
    </script>
</body>
</html>

我甚至无法让它提交。

我通过使用Javascript的本机
this
而不是jQuery的
$(this)
实现了这一点


可能的重复您必须认为每个浏览器都会以不同的方式显示HTML验证,因此也许通过JQuery自己进行验证更有趣。无论如何,CBroe的答案似乎是正确的。所以没有人知道实际的HTML验证何时发生?i、 e.关于哪个事件,以便我们能够解决它?
$(document).on('submit', 'form', function(e) {
    e.preventDefault();
    // Do something here
    $(this).submit();
});
$('form').on('submit', function(e) {
    var form = this;
    e.preventDefault();
    // Do something
    form.submit();
});