簡體   English   中英

根據第一個下拉菜單選擇填充第二個下拉菜單

[英]Populate 2nd Dropdown based on 1st Dropdown Choice

基本上,我要完成的工作是,當有人單擊第一個html下拉列表id="FirstDD" ,根據選擇的option ,第二個下拉列表id="SecDD"將填充與FirstDD下拉列表選項相關的字段。 觸發所有這些操作就是ajax進行初始調用,然后從subcategories.php php處理。

目前,發生的事情是:我選擇了第一個下拉列表,但是SecDD沒有填充任何SecDD

JS / AJAX:

    <script type="text/javascript">
    $(document).ready(function(){
    $("#FirstDD").change(function(){
        $('#SecDD').load('inc/subcategories.php?scatID='+this.value);
        });
    });
    </script>

的HTML

   <select style="width:300px;" id="FirstDD" name="userListingCategory">
                    <!--onchange="$('#SecDD').load('inc/subcategories.php?scatID='+this.value);"-->
                          <option  disabled="disabled">Category...</option>
                          <?php while($row = $sth2->fetch(PDO::FETCH_ASSOC))
                          {echo "<option value=". $categoryID . ">" .$row['catName']."</option>";}
                        unset($sth2);
                        ?>

                    </select> 
                   <select style="width:340px;" id="SecDD" name="userListingSCategory" style="display:none">
                    <?php require_once('inc/subcategories.php'); ?>
                    </div>
                    </select> 

Subcategories.php

<?php require_once('db/dbc.php');
#GET SELECT sub-category names
$pdo3 = new PDO($h1, $u, $p);
$pdo3->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
$sth3 = $pdo3->prepare("
SELECT scatID, scatName
FROM Category C, SubCategory SC
WHERE C.catID = SC.catID
;");
$sth3->execute(array());
?>

<option  disabled="disabled">Sub-Category...</option>
<?php
#Get subcats    
while($row = $sth3->fetch(PDO::FETCH_ASSOC))
{echo "<option value=". $row['scatID'] . ">" .$row['scatName']."</option>";}
unset($sth3);
?>

診斷問題:

  • 獲取php來回顯this.value,以查看其內容是否符合您的期望。
  • 使用您期望的內容運行SQL查詢,並查看它是否返回您期望的數據。

如果這兩種方法每次都能正常工作,則說明沒有什么觸發條件,但是代碼似乎從這里發出。 之后,我將嘗試將echo語句放在行之間,並查看其停止位置。

暫無
暫無

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

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