是否可以在没有提交按钮的情况下验证表单

Is it possible to validate a form without a submit button?

本文关键字:按钮 情况下 验证 表单 提交 是否      更新时间:2023-09-26

我有一些普通的按钮,我使用jquery对其进行操作以进行客户端验证。问题是,我还想添加服务器端验证,但当输入为提交类型时,jquery代码不起作用。当我使用时

$('#addperson').submit(function(event){
  event.preventDefault();
  //code for client side  checks
});

客户端代码不起作用。请有人知道是否有办法让我的按钮在客户端和服务器端都工作吗?

只需首先在客户端执行表单验证,然后执行$('form').submit()并将所有信息发送到服务器。

$('button').click(function () {
     if (validateMyForm()) {
         $('form').submit();
     }
});
function validateMyForm() {
    // check if valid
    [...]
    return isValid
}
<form>
    <input type="text" name="name"/>
    <button type="button">Submit</button>
</form>

"提交事件"可能有助于

var valid = false;    
$("#valid").on('change', function(){
  valid = this.checked;
})
$('#form').on('submit', function(e){
  console.log(valid);
  if(!valid) {
    e.preventDefault();
    $('#ipt').val('oops, stopped'); 
  } else {
    $('#ipt').val('sending'); 
    //yey
  }
});

正在工作的jsbin:https://jsbin.com/nowirij/4/edit?html,控制台,输出