javascript - jQuery 防止提交输入发送表单

标签 javascript jquery forms submit

屏幕上有多个表单,其中一个有一个输入(提交)。 该输入的 JS 绑定(bind)点击事件是:

$('input#next').click(function(e){
   e.preventDefault();
   e.stopPropagation();
   ... some other checks ...
   bSubmit = dateField.val().match(/\d{2}\/\d{2}\/\d{4}/);
   return bSubmit;
});

问题是表单无论如何都会发送,这是不应该发生的。

最佳答案

如果返回的bSubmitp值不是 false,则将提交表单

通过返回 true,您可以说该按钮必须正常工作,并且是有意的...
-提交按钮用于发送表单-

如果您想不惜一切代价禁用,我建议预定义return false

可能是:

  • 关于标签 喜欢:

    <form onsubmit="return false">
    
  • 在您的 中像现在一样的功能,但创建一个条件 值,例如:

    <form onsubmit="return yourFunction()">
    
  • 像:

    $('form').submit(function() {
        // do stuff
        return false;
    });
    
  • 其他..

编辑

此外..您可以将输入类型:提交更改为按钮
然后使用 jQuery 发送表单(验证后)。

并且为了防止按下enter键时提交表单,正如@Daniel Lisik指出的那样...
需要完成两个条件(没有javascript)

  1. 没有表单中存在输入类型:提交按钮
  2. 多个输入字段

关于javascript - jQuery 防止提交输入发送表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21715330/

相关文章:

c# - 使用 Ajax 在 DIV 中显示列表

javascript - jQuery Mobile 显示/隐藏基于选择字段的表单输入

javascript - 如何在文本输入中放置文档网址?

Django 表单 : TimeField Validation

javascript - 禁用/启用输入 :date on checkbox click doen't work properly?

javascript - 页面的一部分作为 Angular 中的 subview

javascript - 在多个函数中修改数组是不好的做法吗?

javascript - 在 .NET WebForms 中使用 jquery 触发简单的 onchange 方法

javascript - 如何使用 momentjs 在几天内计算从现在开始的相对日期?

jQuery - show() 函数可以返回 true 吗?