JavaScript:表单未通过OnSubmit验证

JavaScript:表单未通过OnSubmit验证,javascript,firefox,Javascript,Firefox,我是JavaScript的新手。我有一个表单未通过“警报”按钮验证。我有一个表格,将提交没有错误。如果我提交带有空字段的表单,应该会弹出一条警告消息。 以下是我的代码: 函数验证\u表单(){ 警惕(‘你好’); 出口 var tokenNo=document.forms[“myForm”][“txt1”].tokenNo; if(tokenNo==null | | tokenNo==“”){ 警报(“输入令牌号”); 返回false; }否则{ 文件。书面(“pola”); } } 令牌号

我是JavaScript的新手。我有一个表单未通过“警报”按钮验证。我有一个表格,将提交没有错误。如果我提交带有空字段的表单,应该会弹出一条警告消息。 以下是我的代码:

函数验证\u表单(){
警惕(‘你好’);
出口
var tokenNo=document.forms[“myForm”][“txt1”].tokenNo;
if(tokenNo==null | | tokenNo==“”){
警报(“输入令牌号”);
返回false;
}否则{
文件。书面(“pola”);
}
}

令牌号
其他财产
自行车号码
自行车名称
自行车模型
Activa 3G
闪耀
理教育协会
尤加
近地天体

您没有在提交按钮上调用函数,请先使用此按钮调用函数

<input type="submit" value="submit" onclick="validate_Form()" />

更改

<form name="Sec_guard_form" onsubmit="validate_Form()">


完整的html代码

<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
</head>
<body>

<table>
 <form id="Sec_guard_form" onsubmit="return validate_Form();" method="post">
    <tr>
      <td>Token No</td>
      <td>
        <input type="text" value="" name="token_no" />
      </td>
    </tr>
    <tr>
      <td>Other Property</td>
      <td>
        <input type="text" value="" name="other_prop" />
      </td>
    </tr>
    <tr>
      <td>Bike Number</td>
      <td>
        <input type="text" value="" name="bike_no" />
      </td>
    </tr>
    <tr>
      <td>bike name</td>
      <td>
        <input type="text" value="" name="bike_nm" />
      </td>
    </tr>
    <tr>
      <td>bike model</td>
      <td>
        <select option="bike model">
          <option value="Activa 3G">Activa 3G</option>
          <option value="shine">shine</option>
          <option value="unicon">unicon</option>
          <option value="yuga">yuga</option>
          <option value="neo">neo</option>
        </select>
      </td>
    </tr>
    <tr>
      <td>
        <input type="submit" value="submit" />
      </td>
      <td>
        <input type="submit" value="cancel" />
      </td>
    </tr>
  </form>
</table>
<script>

  function validate_Form() 
    {   alert('hi how');
            var tokenNo = document.getElementById("Sec_guard_form")["token_no"].value;

            if (tokenNo == null || tokenNo  == "")
        {
            alert("Enter The Token No");
            return false;
        }
            else
        {
            document.write("pola");
        }

}

</script>
</body>
</html>

页面标题
令牌号
其他财产
自行车号码
自行车名称
自行车模型
Activa 3G
闪耀
理教育协会
尤加
近地天体
函数validate_Form()
{alert('hi how');
var tokenNo=document.getElementById(“Sec_-guard_-form”)[“token_-no”]值;
if(tokenNo==null | | tokenNo==“”)
{
警报(“输入令牌号”);
返回false;
}
其他的
{
文件。书面(“pola”);
}
}

这很好

您可以这样更改javascript:

function validate_Form() {
   var form = document.querySelector("form");
   var tokenNo = form.elements.token_no.value;
   if (tokenNo == null || tokenNo == "") {
     alert("Enter The Token No");
     return false;
   } else {
     document.write("pola");
   }

   return false;
}
您的html如下所示:

<form name="Sec_guard_form" onsubmit="return validate_Form()">

  • 退出;在javascript中没有任何意义。您必须使用return。因此,如果您在函数执行任何操作之前返回,那么它就没有任何用处了

  • 根据我的说法,您用于选择表单元素并获取其值的语法是错误的,因此我更正了语法

  • 此外,您可能想知道为什么在HTML中使用return validate_form(),而在函数中使用return false。它只用于在整个函数执行之前停止页面刷新/重定向


  • 试试这个代码,它对我有用。。。我不知道hi的作用是什么,所以我取消了它。

    从代码中删除exit中使用
    return-validate\u-Form()
    in
    remove-exit…javascriptok中没有exit命令我将从中删除exit,但如何从javascript中的特定行中退出以进行测试?使用return语句我给出了return-validate\u-Form(),但是什么也没发生我编辑了代码,添加了完整的代码,并且在firefox中运行良好
    
    <form name="Sec_guard_form" onsubmit="return validate_Form()">