提交表单时,表单onSubmit函数未触发

时间:2018-03-04 12:50:01

标签: javascript html5

我看了一下,找不到像我的问题。

我有一个表单,我无法让验证工作。我知道JavaScript文件正在加载,因为页面上的其他功能正常运行。我的代码如下:

  <form method="post" name="selectMod" action="check.php" onsubmit="validate()">

然后表单和按钮编码如下:

  <div class="form-row">
                <div class="col-sm-12 col-md-12">
                    <button type="submit" class="btn btn-success btn-block center-block">Submit</button>

目前,函数中的代码设置为只返回false,因为我无法使其工作。

  function validate(){
  return false;
  }

当然,我错过了一些显而易见的东西,却看不出它是什么。

2 个答案:

答案 0 :(得分:2)

正在开火。它只是没有任何具有可观察效果的东西。

  1. onsubmit函数调用validate
  2. validate函数返回false(因为它有一个return语句)
  3. onsubmit函数忽略该返回值
  4. onsubmit函数返回undefined(因为它没有return语句
  5. 如果您想阻止提交事件的默认行为,则需要return false函数中的onsubmit

    onsubmit="return validate()"
    

    现代代码可以避免使用内部事件属性来支持使用JavaScript绑定事件列表并操纵事件对象。

    var myForm = document.querySelector("form");
    myForm.addEventListener("submit", validate);
    function validate(event) {
        event.preventDefault();
    }
    

答案 1 :(得分:0)

您可以使用以下内容:

 function validate(){
    //if check false
    event.preventDefault();
    return false;
 }