【问题标题】:How do I get the form submit alert to cancel form action?如何获得表单提交警报以取消表单操作?
【发布时间】:2013-08-01 15:24:06
【问题描述】:

我有一个 javascript 函数可以检查是否有人输入了他们的电子邮件:

function formValidate(){

    form1 = document.forms['_register1'];

    if (form1.elements['email'].value == 'Type Your Email Address Here') 

    {

        alert('Please enter your email address.');

        form1.elements['email'].focus();

        return false;

    }
}

这里是html表单:

<form method="post" enctype="multipart/form-data" name="_register1" id="_register" action="signup.php" >
<input type="text" class="field" value="Type Your Email Address Here" name="email" title="Type Your Email Address Here" />
<input type="submit" class="button button-signup" value="SIGN UP!" onclick="formValidate();" /> 

如果用户没有输入电子邮件地址,我希望弹出 javascript 警报,一旦用户按下确定,我希望页面保持不变。在电子邮件有效之前,我不希望 action="signup.php" 发生。这看起来应该很简单,但我在互联网上到处找,找不到解决方案。

谢谢。

【问题讨论】:

    标签: forms validation action onsubmit actionform


    【解决方案1】:

    http://www.html-form-guide.com/php-form/php-login-form.html

    这可能就是您要找的。​​p>

    【讨论】:

    • 谢谢,但这不是我想要的。我有一个 javascript 警报,我想在电子邮件不正确时执行该警报。如果电子邮件正确,我希望执行 php 程序。现在这样,即使邮件不正确,php程序也总是执行。
    【解决方案2】:

    我终于找到了答案。关键是使用javascript submit() 函数。我不使用输入类型提交,而是使用常规按钮。然后,在 javascript 验证表单并且表单具有正确的数据后,我使用了提交功能。下面是我的代码。如果有人好奇,请随时问我。

    function formValidate(){
    
        //define form1 as registration form
        form1 = document.forms['_register1'];
        var submission = true;
        //make sure email address is not blank
        if (form1.elements['email'].value == 'Type Your Email Address Here') {
    
            alert('Please enter your email address.');
    
            form1.elements['email'].focus();
    
            var submission = false;
        } 
        //submit form if data is good
        if(submission != false){
            form1.submit();
        }
    }
    

    这里是html:

        <input type="text" value="Type Your Email Address Here" name="email" title="Enter email" />
    
        <input type="button" value="SIGN UP!" onclick="formValidation();" />    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-13
      • 1970-01-01
      • 2014-07-30
      • 2020-11-24
      • 2010-10-05
      相关资源
      最近更新 更多