简体   繁体   English

表单验证后服务器端脚本无法正常工作

[英]Server side script not working after form validation

hy! HY! I have a signup form. 我有一个注册表格。 I want to submit form using ajax after complete validation.I used jquery plugin for validation. 我想在完成验证后使用ajax提交表单。我使用jquery插件进行验证。 But as soon as, i simply click on any field, the ajax request automatically sent to server and return a response before hitting submit button. 但是,只要点击任何字段,ajax请求就会自动发送到服务器并在点击提交按钮之前返回响应。 Also, I am getting the "missing value" message. 此外,我收到“缺失值”消息。 I do not know, where is the mistake. 我不知道,错误在哪里。 Help me ! 帮我 !

Validation.js Validation.js

$(document).ready(function() {

    $('#signup_form').formValidation({

        // To use feedback icons, ensure that you use Bootstrap v3.1.0 or later
        feedbackIcons: {
            valid: 'glyphicon glyphicon-ok',
            invalid: 'glyphicon glyphicon-remove',
            validating: 'glyphicon glyphicon-refresh'
        },
        fields: {

            }
        })
        .on('success.form.bv', function(e) {
                $('#signup_form').data('formValidation').resetForm();

        });
});

form_signup.php form_signup.php

<script type="text/javascript">
$(document).ready(function (){
    $('#signup_form').submit(function(e){ e.preventDefault(); });
 $(function(){
        $("#signup_form").click(function(event){
            //event.preventDefault();

            $.ajax({
                    url:'form_process.php',
                    type:'POST',
                    data:$(this).serialize(),
                    success:function(result){
                       alert(result);

                    }

            });
        });
    });
    });

form_process.php form_process.php

<?php
print_r($_POST);
require_once './functions/functions.php';

if(isset($_POST['FirstName']))
{
     echo $firstName = $_POST['FirstName'];
   }
else{ echo ("missing value!");}

your were calling ajax on form click inside form submit ?? 你在表单上点击内部表单提交调用ajax? , you need to call it on form submit instead ! ,你需要在表单提交上调用它!

 $(document).ready(function(){
  $('#signup_form').submit(function(e){
        e.preventDefault();
        $.ajax({
                url:'form_process.php',
                type:'POST',
                data: $('#signup_form').serialize(),
                success:function(result){
                   alert(result);

                }

           });
    });
 });

try this way... 试试这种方式......

Hope it helps 希望能帮助到你

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

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