-1

HTML コード :

<form>
  <tr><td align="center">
    <p><select size="1" id="breed_list" name="D1" onChange="editBreed(this.value);"> 
      <option>Select Cattle Breed</option>
      <?php while(list($id, $breed)=mysql_fetch_row($result1)) {
        echo "
        <option value=\"".$id."\">".$breed."</option>";
      } ?>
      </select></p>
    </td></tr>
</form>

Javascript コード :

<script type="text/javascript">
function editBreed(str){
    alert("Made it to Edit Breed"+ str);
    if (str=="" || str=="Select Cattle Breed") {
        document.getElementById("animal_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("animal_data").innerHTML=xmlhttp.responseText;
        }
    }

    xmlhttp.open("GET","editbreed.php?d="+str+,true);
    xmlhttp.send();
}
</script>

select を read に変更するとonChange="alert(this.value);">、何らかの理由で正しいレコードが表示されますが、何らかの理由で関数に移動せず、そこにあるアラートが表示されます。

ありがとう

4

1 に答える 1

2

関数の最後から 2 番目の行に、関数がまったく実行されない原因となっている構文エラーがあります。

xmlhttp.open("GET","editbreed.php?d="+str+,true);

+後を取り除くstr

xmlhttp.open("GET","editbreed.php?d="+str,true);
于 2012-12-17T21:58:19.107 に答える