簡體   English   中英

如何在復選框列表中突出顯示AJAX搜索結果而不丟失php中的復選框選擇?

[英]how to highlight AJAX search result in a check box list without losing check box selections in php?

我有一個學生的復選框列表和第一個php頁面中的搜索框。在ajax頁面中,我將得到搜索結果。

但是問題是,如果用戶選擇了第一個搜索結果並再次搜索,則第一個搜索的選擇將丟失

我如何在第一次搜索中保存選擇?我曾嘗試在會話數組中進行選擇,但無法正常工作

//check list
    $qry="select cand_id,name from candidate where inst_id=".$_SESSION['inst_id']."";
    $res=$ob->select($qry,$connect);
    while($rw=pg_fetch_row($res))
    {

        echo"<br><input type=\"checkbox\" name=\"check[]\" value=\"$rw[0]\">";echo$rw[1];echo"<br>" ;
    }
//Ajax page
if($ajaxData!="")
{
                                if($_SESSION['usertype_id']==1)
                                {
                                $qry="select cand_id,name from candidate where name like'$dataup%'  ";

                                }
                                else if($_SESSION['usertype_id']==2)
                                {
                                $qry="select cand_id,name from candidate where inst_id=".$_SESSION['inst_id']."
                                and  name like'$dataup%' ";
                                }
                                $res=$ob->select($qry,$connect);
                                $words=array();
                                $count = pg_num_rows($res);
                                if($count>0)
                                {
                                    $i=0;
                                    //echo"<div  style=\"width: 200px; height: 200px;overflow-y: auto;padding-top: 10px;padding-right: 0px;padding-bottom: 0.25in;\">";
                                    while($rw=pg_fetch_row($res))
                                    {
                                        $words[$i]=$rw[0];$i++;


                                    }

                                    $_SESSION['checkAjax']=$words;//can_id array
  1. 如何使用數組$_SESSION['checkAjax']突出顯示?
  2. 為什么在每個ajax調用中未設置$_SESSION['checkAjax']
  3. 只需更改所選學生姓名的顏色

假設您使用這種方式將代碼用於復選框:

<input type="checkbox" name="options[]" value="student"> Student
<input type="checkbox" name="options[]" value="teacher"> Teacher
<input type="checkbox" name="options[]" value="professor"> Professor

如果是這種情況,您可以通過這種方式在服務器端進行檢查,我再次假設是通過POST進行的

<input type="checkbox" name="options[]" value="student"<?php echo (in_array("student", $_POST["options"])) ? ' checked="checked"' : ''; ?>> Student
<input type="checkbox" name="options[]" value="teacher"<?php echo (in_array("teacher", $_POST["options"])) ? ' checked="checked"' : ''; ?>> Teacher
<input type="checkbox" name="options[]" value="professor"<?php echo (in_array("professor", $_POST["options"])) ? ' checked="checked"' : ''; ?>> Professor

希望這可以幫助! :)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM