0

以下にドロップダウンメニューがあります。

<select name="session" id="sessionsDrop">
<option value="">Please Select</option>
<option value='20'>EWYGC - 10-01-2013 - 09:00</option>
<option value='22'>WDFRK - 11-01-2013 - 10:05</option>
<option value='23'>XJJVS - 12-01-2013 - 10:00</option>
<option value='21'>YANLO - 11-01-2013 - 09:00</option>
<option value='24'>YTMVB - 12-01-2013 - 03:00</option>
</select> </p> 

下には複数選択ボックスがあり、上のドロップダウン メニューから選択した評価を受けている学生のリストが表示されます。

$studentactive = 1;

$currentstudentqry = "
SELECT
ss.SessionId, st.StudentId, st.StudentAlias, st.StudentForename, st.StudentSurname
FROM
Student_Session ss 
INNER JOIN
Student st ON ss.StudentId = st.StudentId
WHERE
(ss.SessionId = ? and st.Active = ?)
ORDER BY st.StudentAlias
";

$currentstudentstmt=$mysqli->prepare($currentassessmentqry);
// You only need to call bind_param once
$currentstudentstmt->bind_param("ii",$sessionsdrop, $stuentactive);
// get result and assign variables (prefix with db)

$currentstudentstmt->execute(); 

$currentstudentstmt->bind_result($dbSessionId,$dbStudentId,$dbStudentAlias,$dbStudentForename.$dbStudentSurname);

$currentstudentstmt->store_result();

$studentnum = $currentstudentstmt->num_rows();   

$studentSELECT = '<select name="studenttextarea" id="studentselect" size="6">'.PHP_EOL;      

if($studentnum == 0){

$studentSELECT .= "<option disabled='disabled' class='red' value=''>No Students currently in this Assessment</option>"; 


}else{   

while ( $currentstudentstmt->fetch() ) {

$studentSELECT .= sprintf("<option disabled='disabled' value='%s'>%s - %s s</option>", $dbStudentId, $dbStudentAlias, $dbStudentForename, $dbStudentSurname) . PHP_EOL; 
}

}

$studentSELECT .= '</select>';

しかし、少し問題があります。ユーザーがドロップダウン メニューからオプションを選択したときに、選択ボックスに学生のリストを表示できるようにする方法が必要です。PHP コードの問題は、結果を見つけるためにページを送信する必要があることです。

私の質問は、javascript/jQuery を組み合わせて、上記の php コードが選択した評価を受ける学生を探すことができるが、評価時に選択ボックスに学生情報を表示するために javascript/jQuery を使用できるようにする方法があるということです。ドロップダウンメニューで選択されていますか?

4

1 に答える 1

1

あなたが探しているのは php Ajax ソリューションなので、ページを更新しなくても学生のリストを更新できます。

$('#sessionsDrop').change(function() {
  var search_val=$(this).val(); 
  $.post("./nameofyourphp.php", {search_term : search_val}, function(data){
   if (data.length>0){ 
     $("#divtodisplaydata").html(data); 
   } 
  }) 
 }) 

これをphpに追加して、選択した値を取得できるようにします

$term = $_POST['search_term'];

ここにステップバイステップのチュートリアルがあります

http://www.ibm.com/developerworks/opensource/library/os-php-jquery-ajax/index.html

于 2013-01-08T06:28:53.080 に答える