带验证引擎的AJAX

时间:2013-03-30 10:55:00

标签: php ajax

在AJAX调用向DB发送信息之前,它不会进行验证。如何首先激活验证?

$(document).ready(function() {
        $("#signup").validationEngine('attach', {
            promptPosition : "centerRight",
            scroll : false,
            ajaxFormValidation: true,
            onBeforeAjaxFormValidation: beforeCall,
            onAjaxFormComplete: ajaxValidationCallback,
        });
    });




$("#submit").click(function() {
        var url = "insertintoDB.php"; // the script where you handle the form input.
        $.ajax({
               type: "POST",
               url: url,
               data: $("#signupform").serialize(), // serializes the form's elements.
               success: function(data)
               {
                   alert(data); // show response from the php script.
               }
             });

        return false; // avoid to execute the actual submit of the form.
    });

它确实指向insertintoDB.php,但不验证以下表单。

<form class="form-horizontal" id="signup" name="signup" method="post" action="insertDB.php">

 <div class="control-group">
 <label class="control-label" for="inputSurname">Name</label>
 <div class="controls"><input type="text" id="inputSurname" name="inputSurname" placeholder="Surname" class="validate[required]" /></div>
 </div>
<button type="submit" id="submit" class="btn btn-success">Sign Up!</button>

</form>

如何在传入PHP进行数据插入之前先进行验证?

2 个答案:

答案 0 :(得分:1)

您可以使用这些验证开源库验证变量:

jQuery-Form-Validator
Lightweight form validation for jQuery or Zepto.js
jQuery-Validation-Engine

等等......

  

但我强烈建议您先使用服务器端验证   任何数据库操作,以防止SQL注入和XSS攻击。

答案 1 :(得分:0)

使用jQuery Validator进行表单验证,其模式如下:

$('form').validate({
    invalidHandler: function(event, validator) {
        // Handle the invalid case.
    },
    submitHandler: function(form) {
       // do stuff on your valid form.
       // Then call form submit.
       form.submit();
    }
});

验证程序允许您为各种条件设置规则和错误消息,但它会自动检测缺少的字段,其中包含“required”属性和其他基于字段类型的情况。例如。网址 - 它需要一个有效的网址等。

服务器端验证很重要,但jQuery验证器允许您在仍然受到用户注意的情况下捕获许多内容,并且可以轻松修复。

见这里:jQuery Validator