如何在多页表单中记住复选框/单选按钮选择

时间:2014-01-08 11:30:18

标签: php jquery checkbox

我们有一个跨越多个页面的表单,表单中充满了复选框和单选按钮。要求是当用户浏览表单的多个页面时,用户应该能够在按下表单“提交”按钮之前看到他已经选中的复选框和单选按钮。

我正在复制用于在表单中生成复选框的代码段 - 这只是一个示例代码。

 <form action="car_model.php" method="post" name="car_form" id="car_form">

     $q10 = "SELECT ...
 $r10 = mysqli_query ($dbc, $q10); 
 if (mysqli_num_rows($r10) > 0) {    
       while ($row10 = mysqli_fetch_array($r10, MYSQLI_ASSOC)) 
       {
         echo '<p class="normal_text"><input type="checkbox" name="model_selection[]" value="' . $row10['model_id'] . '" onclick="return KeepCount()"; />' . $row10['car_model_name'] . '</p></br>';      
       }
     }

  </form>


    if ($pages > 1) {

        echo '<br /><p>';

        // Determine what page the script is on:    
        $current_page = ($start/$display) + 1;

        // If it's not the first page, make a Previous button:
        if ($current_page != 1) {
            echo '<a href="car_model.php?s=' . ($start - $display) . '&p=' . $pages . '">Previous</a> ';
        }

        // Make all the numbered pages:
        for ($i = 1; $i <= $pages; $i++) {
            if ($i != $current_page) {
                echo '<a href="car_model.php?s=' . (($display * ($i - 1))) . '&p=' . $pages . '">' . $i . '</a> ';
            } else {
                echo $i . ' ';
            }
        }  

        // If it's not the last page, make a Next button:
        if ($current_page != $pages) {
            echo '<a href="car_model.php?s=' . ($start + $display) . '&p=' . $pages . '">Next</a>';
        }

        echo '</p>';  

    }       

据我所知,JQuery是一个很好的工具 - 如何使用它?

1 个答案:

答案 0 :(得分:1)

如果使用服务器端会话变量不是一个选项,那么您可以通过以下方式实现它:当您单击“下一步”而不是加载新页面时,您只需隐藏表单可见部分的当前内容占位符并显示下一个位于它的位置,并在点击返回时显示相同的内容。

这可以通过jQuery轻松完成。这是一个非常简单的例子,可以帮助您入门:

$("#next").click( function () {
    $("#page1").hide();
    $("#page2").show();
});

$("#back").click( function () {
    $("#page1").show();
    $("#page2").hide();
});

Fiddle

祝你好运!