-1

私はプログラミングが初めてで、CodeAcademy の jquery コースを終了したばかりです。現在、Jquery の AJAX 関数を使用して連鎖選択を作成し、データベースでクエリを実行してメインの html ページにエコーする php ページを呼び出そうとしています。 .

現在、最初の のみをロードできます。2 番目と 3 番目の選択は機能していないようで、何が間違っているのか正確にはわかりません。

Jquery コード:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $("#category").load("AddItemCat.php");
});

$("#category").onchange(function(){
    var category=$("#category").val();
    $("#subcat").load("AddItemSubCat.php?category="+category);
});

$("#subcat").onchange(function(){
    var category=$("#category").val();
    var subcat=$("#subcat").val();
    $("#subcat").load("AddItemSubCat.php?category="+category+"&subcat="+subcat);
});

私のHTMLフォーム:

<form action="<?PHP echo $_SERVER['PHP_SELF'] ?>" name="edititem" enctype="multipart/form-data" method="POST">
<table border='1'>
<tr>
<td colspan="3">
  Category:
    <select name="category" id="category" ></select>



  SubCategory:
    <select id="subcat" name="subcat"></select>


  Item:
    <select id="item" name="item"></select>
</td>
</tr>

<tr>
  <td>Item Name</td>
  <td><input type="text" name="itemname" size="30" maxlength="50" required="required"></td>
</tr>
<tr>
  <td>Item Price</td>
  <td><input type="number" name="itemprice" size="30" min="1" required="required"></td>
</tr>
<tr>
  <td>Item Info</td>
  <td><textarea name="iteminfo" col="40" rows="10" maxlength="300" required="required"></textarea>
</tr>

<tr>
  <td>Filename:</td>
  <td><input type="file" name="upload[]" /></td>
</tr>

<tr>
  <td>Filename:</td>
  <td><input type="file" name="upload[]" /></td>
</tr>

<tr>
  <td>Filename:</td>
  <td><input type="file" name="upload[]" /></td>
</tr>

<tr>
  <td>Filename:</td>
  <td><input type="file" name="upload[]" /></td>
</tr>

<tr>
  <td>Filename:</td>
  <td><input type="file" name="upload[]" /></td>
</tr>
<tr>
 <td colspan="2"><input type="SUBMIT" name="Button" value="Submit"></td>
</tr>
<tr>
  <td colspan="2"><?PHP if(isset($errormsg)){echo"$errormsg";}?></td>
</tr>       
<tr>
  <td colspan="3"><font color="#FF0000"></font></td>            
</tr> 

誰かが私の間違いを指摘し、それを修正するための指針を教えていただければ幸いです.Thanks!

4

2 に答える 2

2

あなたを助けるための多くのコードへの道ですが、あなたはjQueryの部分が機能しないと言っているので:

$("#category").onchange(function(){

これは

("#category").on("change", function(){

onchangejQuery 1.10 (または他のバージョン?) にはありません。コンソールを簡単に調べると、私が推測するエラーが表示されます。さらに、他のすべての呼び出しも内部に配置する必要があります$(document).ready

于 2013-08-08T08:07:47.343 に答える