未在表单上发布动态复选框

时间:2014-02-25 04:03:46

标签: php jquery html sql forms

我有一个div元素,它会在从另一个下拉列表中更改值时自动填充一个复选框列表。复选框填充正确,但是'pl'参数无法在提交表单时发布到另一个表单createreport.php。

报名表:

 $.ajax({
     type: "POST",
     url: "loadData.php",
     data: dataString,
     cache: false,
     success: function(result){
       $("#loader").fadeOut(600);
       $("#inputpl").empty().append(result);
     }
   });

    <form action="createreport.php" method="post">
              <div class="form-dropdown" style="width:300px" id="inputpl" name="pl">

    //////////checkboxes populated here. If I hard code the checkboxes here, it can be passed over successfully

              </div>
    <input type="submit" />
    </form>

loadData.php:

for($i=0; $i<=odbc_fetch_row($result); $i++){
                $name = odbc_result($result, 1);


                echo '<input type="checkbox" name="pl[]" value="'.$name.'" />'.$name.'<br/>';
            }   

createreport.php:

  echo '<pre>';
    print_r($_POST['pl']);
    echo '</pre>';

输出:

注意:未定义的索引:pl在第21行的C:\ inetpub \ wwwroot \ test \ createreport.php

编辑:我可以通过将其添加到提交按钮来提醒复选框的值:

  $('input[type="checkbox"]:checked').each(function(){
        alert(this.value);
    })

2 个答案:

答案 0 :(得分:1)

for($i=0; $i<=odbc_fetch_row($result); $i++){
    $name = odbc_result($result, 1);
    echo '<input type="checkbox" name="pl[]" value="'.$name.'" />'.$name.'<br/>';
}   

odbc_fetch_row返回一个成功获取的布尔值。你想要这个:

<?php
while (odbc_fetch_row($result)) {
    $name = odbc_result($result, 1);
    echo '<input type="checkbox" name="pl[]" value="'.$name.'" />'.$name.'<br/>';
}

看起来好像从loadData.php返回任何内容。

答案 1 :(得分:0)

我认为您已提交表单而未选中任何复选框,说明错误报告的原因

请尝试以下代码

if(isset($_POST['pl'])){
echo '<pre>';
    print_r($_POST['pl']);
    echo '</pre>';
    }