如何验证表单然后提交到url?

时间:2012-11-11 09:34:22

标签: java jquery forms html5 validation

我的表单根据输入字段的值重定向提交到url。但如果电子邮件不正确,我的表格仍然提交。我该如何解决?此表单的URL是dokuchaeva.com/donate/。我需要验证是否是电子邮件。现代浏览器验证它购买默认值。如果电子邮件字段错误,我会发出警报,但表单仍然提交。我需要提交表单并根据插入的信息重定向到预定义的URL。

            <form>
                <label>DONATION AMOUNT</label> <input name="price" id="price" class="button" value="100" required size="6" tabindex="1"> RUB<br><br>
                <label>YOUR E-MAIL</label> <input type="email" name="user_email" id="user_email" required="" placeholder="email@example.com" class="button" autofocus="autofocus" tabindex="0">
                <input type="submit" id="submit" value="SUBMIT" class="button" tabindex="3" onclick="location.href= 'http://secure.onpay.ru/pay/dokuchaeva?'+'pay_mode=fix&pay_for=donation&price='+$('#price').val()+'&currency=RUR&user_email='+$('#user_email').val()+'&pay_for=donation&convert=no&ln=en&url_success=dokuchaeva.com/donate/success.html&url_fail=dokuchaeva.com/donate/fail.html';">
            </form>

2 个答案:

答案 0 :(得分:1)

使用form.submit函数,如果你返回true,你知道表单提交已经全部处理或应该被中止 - 作为回报,如果返回为false,浏览器将正常发送表单。

<script>
   function validateme(form) {
       var isValid = false; // default, not true
       for(var el in form.elements) if(form.elements.hasOwnProperty(el) {
           // perform checks here
            if(form.elements[el].value == "") isValid = false;
       }
       return !(isValid);
   }
</script>
<form action="getUrlHereOrDocumentLocationIsUsed" submit="return validateme(this)">
 ...
</form>

答案 1 :(得分:0)

首先,您需要指定所需的验证类型。

如果您只想要基于客户端的验证来处理表单数据而不提交。

检查Jquery Validation插件非常方便。

http://docs.jquery.com/Plugins/Validation

如果您需要基于客户端和基于后端的验证。首先,您需要在客户端使用JQuery验证进行验证,然后提交表单并在后端使用验证逻辑。

E.g检查数据库中是否已存在电子邮件,或者是否已使用用户名等。

相关问题