MySql 데이터베이스를 쿼리하는 PHP가 작성한 5 개의 드롭 다운 목록이있는 양식이 있습니다. 목록이 올바르게 빌드되고 있습니다.5 개의 드롭 다운 목록이있는 Ajax
사용자가 목록에서 선택하고 선택한 값을 기준으로 아래쪽에 양식을 채우길 원합니다.
첫 번째 목록에서 찾습니다. 여기
내가 1 목록에서 선택하면 2 다음<td>
<p><select size="1" name="D2" onchange=”showStudent(this.value);” >
<?php while(list($id, $student_id)=mysql_fetch_row($result2)) {
echo "
<option value=\"".$student_id."\">".$student_id."</option>";
}
?>
</select></p>
</td>
는 자바 스크립트 코드
<script type="text/javascript">
function CreateXmlHttpObject() { //function to return the xml http object
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();//creates a new ajax object
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");//this is for IE browser
}
catch(e){
try{
req = new ActiveXObject("Msxml2.XMLHTTP");//this is for IE browser
}
catch(e1){
xmlhttp=false;//error creating object
}
}
}
return xmlhttp;
}
function showStudent(str)
{
// alert("Made it to show students"+ str);
if (str=="")
{
document.getElementById("student_data").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("student_data").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","editstudent.php?d="+str,true);
xmlhttp.send();
}
</script>
의 목록에서 코드 목록 여기에 1
<td width="90">
<p><select size="1" name="D1" onchange="showStudent(this.value);">
<?php while(list($id, $student_id)=mysql_fetch_row($result1)) {
echo "
<option value=\"".$student_id."\">".$student_id."</option>";
}
?>
</select></p>
</td>
의 코드 것입니다, 모든 그것이해야하는대로 일합니다. 그러나 목록 2-5에서 선택하면 아무 것도 없습니다. 내가 그 중 하나에서 처음으로 선택하더라도. 심지어 특정 목록 이름과 일치하는 함수의 이름을 변경 시도하고 여전히 첫 번째 작동합니다.
무엇이 누락 되었습니까?
호기심에서 벗어나서, 두 번째 목록의 HTML에서 onchange 주위에 잘못된 큰 따옴표 태그가 있기 때문에 그럴 수 있습니까? '= "showStudent (this.value);">'는'= "이어야합니다. showStudent (this.value);" > ' – ametren
네, 정말 고마워요. 지금까지 몇 시간 동안이 코드를 읽었습니다. 다시 고마워, 항상 신선한 눈을 도우십시오 – Hank
괜찮 으면 그 대답으로 다시 게시하겠습니다. – ametren