使用序列化功能发送表单数据

时间:2013-03-29 09:22:14

标签: php javascript jquery

我想将表单的所有输入字段发送到process / do_submitattendance.php, 我可以在哪里使用存储在数据库中。 但是我在做这件事时遇到了麻烦。 我的jQuery代码是 -

 <script type="text/javascript">
    $("#submitattendance").submit(function(){

        var_form_data=$(this).serialize();
        $.ajax({
            type: "POST",
            url: "process/do_submitattendance.php",
            data: var_form_data,
            success: function(msg){
                alert("data saved" + msg);

            });

    });       
</script>

submitattendance是表单元素的ID。

3 个答案:

答案 0 :(得分:1)

我猜这个表单正在提交,你必须阻止默认的提交操作:

<script type="text/javascript">
  $(function() {
    $("#submitattendance").on('submit', function(e){
        e.preventDefault();
        $.ajax({
           type: "POST",
           url : "process/do_submitattendance.php",
           data: $(this).serialize()
        }).done(function(msg) {
            alert("data saved" + msg);
        });
    });
  });
</script>

答案 1 :(得分:0)

var var_form_data=$(this).serialize();

是我能找到的全部内容,或者代码中的某些内容必定存在错误。您可以在Chrome控制台中查看是否存在错误(f12)。还要添加return false;以停止提交表单。

答案 2 :(得分:0)

为什么不尝试通过会话传递值?

通过使用会话,您可以将值从一个页面传递到您想要的任何其他页面。

典型代码如下所示:

Mainpage.php

 <?php
    session_start(); // You should start session 
    $_SESSION['UserName']="YourTextfield"; 
    ?>

SecondPage.php

<?php
session_start();
$var = $_SESSION['UserName'];
?>

保存数据后......您需要重置会话

$_SESSION['UserName']="";

这就是我经常使用的东西。我希望它能帮到你...