Javascript 即使表单从未提交,也要使用html5验证?
我正在做的是捕捉表单提交按钮上的单击操作,Javascript 即使表单从未提交,也要使用html5验证?,javascript,jquery,html,Javascript,Jquery,Html,我正在做的是捕捉表单提交按钮上的单击操作,preventeddefault()prevented,进行一些计算,然后进行ajax调用,而不是提交表单 是否有一种方法可以使用javascript强制html5验证程序启动,即使表单没有提交 $('#submitButton').click(function (e) { e.preventDefault(); //stop the form from submitting //Do computation
preventeddefault()
prevented,进行一些计算,然后进行ajax调用,而不是提交表单
是否有一种方法可以使用javascript强制html5验证程序启动,即使表单没有提交
$('#submitButton').click(function (e) {
e.preventDefault(); //stop the form from submitting
//Do computation
$.post('/comments', values, function(results) {
hideForm($('#new_comment_' + parentId));
parent.children('.children').prepend(results);
}, 'html');
});
我在最新的Chrome和Firefox上进行了测试,效果很好。只需在
上的e.preventDefault()
:
html:
<form method="post" action="test.html">
<input type="text" required></input>
<input type="submit" value="Submit">
</form>
$('form').submit(function(e){ e.preventDefault(); });
示例:使用html5约束表单对象有一些新方法。例如,可以对表单对象调用checkValidity()来检查输入
<form method="post" action="test.html" id="myForm">
<input type="text" required></input>
<input type="submit" value="Submit" id="submitButton">
</form>
<script type="text/javascript">
$('#submitButton').click(function (e) {
e.preventDefault();
alert($("#myForm").get()[0].checkValidity());
})
</script>
$(“#提交按钮”)。单击(函数(e){
e、 预防默认值();
警报($(“#myForm”).get()[0].checkValidity());
})
是的,我可以用javascript进行我自己的验证,但是html5的required=“required”标记很好而且简单,为您设置了一个外观体面的弹出式GUI。更少的工作和更少的代码复杂度总是一个加号,但是使用html5的验证需要花费太多的工作。我可以自己制作javascript验证。啊,捕捉表单提交,而不是点击提交按钮。更聪明的主意谢谢:)