好的,所以将preventDefault放在我的提交按钮上可以阻止表单提交。这样做的结果是它不会告诉用户必需的字段,只是在按钮上执行click事件。
将preventDefault添加到提交处理程序会向用户显示必填字段,但仍会触发与该按钮关联的单击事件。
我需要两个。
<form action="" method="post">
<input type="text" class="class" id="id" name="name" required="required" />
</form>
现在是js:
$("button").click(function(event){
event.preventDefault();
//performs function
});
这将触发click事件,无论所需的表单输入如何。
$("form").submit(function(event){
event.preventDefault();
});
$("button").click(function(){
//performs function
});
这将向用户显示所需的消息,但仍然执行提交按钮功能。我怎么做两个?我已经查看了其他一些我可以在此找到的SO问题,但似乎最多可以通过将preventDefault添加到form.submit来解决。
答案 0 :(得分:5)
当我只需要做一件事时,我实际上是想做两件事。
我根本不需要button.click功能,因为默认情况下它会提交表单。我只需要将button.click函数放在form.submit中。
$("form").submit(function(event){
//perform button function
return false;
});
答案 1 :(得分:0)
手动触发提交事件。
$("button").click(function(event) {
event.preventDefault();
$('form').submit();
});