使用jquery ajax传递表单元素的数组

时间:2015-07-22 05:43:09

标签: php jquery ajax

我有一个表单,我需要将它传递给PHP页面 这是我的HTML部分,

 for ($j=0;$j<2;$j++) {
        ?>

        <tr><th><div class="col-xs-2">


                    <input class="form-control input-lg" name="Time[]" id="inputlg" type="text" value="" style="width:120px; height:30px;">

                    </div></td>
        <?php   
        for ($s=1;$s<=count($days)-6;$s++) {
            ?>
            <td><div class="col-xs-2">

                    <input class="form-control input-lg" name="Subject[]"  id="Subject<?php echo $j.$s ?>" type="text" value="" style="width:120px; height:30px;"> 
                    <input class="form-control input-lg" name="Day[]" id="inputlg" type="hidden" value="<?php echo $days[$s]; ?>" style="width:120px; height:30px;">

                    </div></td>
            <?php   
        }
        echo "</tr>";


    }

这是我的jquery代码,

$(document).ready(function() {
    $("#btnSubmit").click(function() {
        var Sub = $('[name=Subject]').val();

        $.ajax({
            url: 'sample.php',
            type: 'post',
            data: 'Subject=' + Sub,
            success: function(data) {
                alert(data);
            },
            error: function(data) {
                alert("ERRRR");
            }

        })
    });
});

这是我的PHP代码,

     $Sub  = $_POST['Subject'];
     print_r($Sub);

它实际上发送了值,但我没有得到任何回复。我很坚持,任何帮助将非常感激。

编辑:

我听过地图或者每个功能都可以做到这一点,但我不知道如何使用这些功能

1 个答案:

答案 0 :(得分:1)

for ($j=0;$j<2;$j++) {
    ?>
    <form>
    <tr><th><div class="col-xs-2">


                <input class="form-control input-lg" name="Time[]" id="inputlg" type="text" value="" style="width:120px; height:30px;">

                </div></td>
    <?php   
    for ($s=1;$s<=count($days)-6;$s++) {
        ?>
        <td><div class="col-xs-2">

               <input class="form-control input-lg" name="Subject[]"  id="Subject<?php echo $j.$s ?>" type="text" value="" style="width:120px; height:30px;"> 
                <input class="form-control input-lg" name="Day[]" id="inputlg" type="hidden" value="<?php echo $days[$s]; ?>" style="width:120px; height:30px;">

                </div>
         </td>

        <?php   
    }
    echo "</tr>";


} ?>

<input type="button" id="btnSubmit" value="sub">
</form>

脚本是

<script type="text/javascript">
$(document).ready(function() {
$("#btnSubmit").click(function() {
    var str = $( "form" ).serialize();


    $.ajax({
        url: 'newpage.php',
        type: 'post',
        data: str,
        success: function(data) {
            alert(data);
        },
        error: function(data) {
            alert("ERRRR");
        }

    })
});

});     

使用此功能,您将获得整个输入数组。