繁体   English   中英

为什么验证在 JavaScript 中不能正常工作?

[英]Why validation is not working properly in JavaScript?

我有一个输入字段和一个提交按钮:

        <form action="" method="post">
           <input type="text" name="sponsar_name" id="sponsar_name" />
          <input type="submit" value="Submit"  class="btn-submit" name="submit" onClick="validate()" >
    </form>

      function validate()
    {
        var flag = 0;
    if(document.getElementById("sponsar_name").value == null || document.getElementById("sponsar_name").value == "")
        {
            document.getElementById("sponsar_name").style.borderColor = 'red';
            flag = 1;
            }
            else
            {
                        document.getElementById("sponsar_name").style.borderColor = '';
                }

                if(flag==1)
                {
                    return false;
                }
                else
                {
                    return true;
                }

    }
                     </script>

我在提交按钮上应用了一个onClick函数。我已经申请了验证。

当我单击提交按钮时,它会显示文本框的红色背景,但会立即刷新页面。

如果文本框为空白,则不应刷新页面,但在我的代码中它正在这样做。

谁能帮我?

试试

<form action="" method="post">
   <input type="text" name="sponsar_name" id="sponsar_name" />
   <input type="submit" value="Submit"  class="btn-submit" name="submit" onClick="return validate()" >
</form>

您需要使用onClick="return validate()"onSubmit="return validate()" 它将解决问题。

使用onClick="return validate()"

<form action="" method="post">
    <input type="text" name="sponsar_name" id="sponsar_name" />
    <input type="submit" value="Submit"  class="btn-submit" name="submit" onClick="return validate()" >
</form>

使用onSubmit="return validate()"

<form action="" method="post" onSubmit="return validate()">
    <input type="text" name="sponsar_name" id="sponsar_name" />
    <input type="submit" value="Submit"  class="btn-submit" name="submit">
</form>

你需要这样做,

<input type="submit" value="Submit" class="btn-submit" name="submit" onClick="return validate()" >

当您在方法中返回 false 时,您的表单将不会被提交。

像这样更改表单:删除onClik函数并在表单标题上添加onSubmit

<form action="" method="post" onsubmit="return validate()">
           <input type="text" name="sponsar_name" id="sponsar_name" />
          <input type="submit" value="Submit"  class="btn-submit" name="submit"/> 
    </form>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM