Получить значения выпадающего при выборе первого выпадающего - PullRequest
0 голосов
/ 19 октября 2011
        <select style="width:300px;" id="n" name="userListingCategory">
              <option  disabled="disabled">Category...</option>
                  <?php while($row = $sth2->fetch(PDO::FETCH_ASSOC))
                  {echo "<option value=". $row['catID'] . ">" .$row['catName']."</option>";}
                unset($sth2);
                ?>

            </select> 
             <select style="width:340px;" id="n" name="userListingSCategory">
           <option  disabled="disabled">Sub-Category...</option>
               <?php while($row = $sth3->fetch(PDO::FETCH_ASSOC))
                  {echo "<option value=". $row['scatID'] . ">" .$row['scatName']."</option>";}
                unset($sth3);
             ?>

Это создает два раскрывающихся списка со значениями.

После нажатия userListingCategory я хочу запустить следующий SQL для получения связанных подкатегорий (userListingSCategory):

SELECT scatID, scatName
FROM Category C, SubCategory SC
WHERE $valueOfFirstSelected = SC.catID;

По сути, получит идентификатор и имя подкатегории, связанные с идентификатором первоначально выбранной категории (отсюда: $valueOfFirstSelected)

Кто-нибудь? Ajax или jQuery или Php будут наиболее полезными.

Спасибо

1 Ответ

0 голосов
/ 19 октября 2011

ваш файл:

<select id="select_one" onchange="FillSelectTwo(this.options[this.selectedIndex].value)">
    ...
</select> 
<select id="select_two">
    ...
</select>

<script type="text/javascript">
function FillSelectTwo(id) {
    $('#select_two').find('option').remove();
    $.ajax({
        url: 'ajax_fill_select_two.php?id='+id,
                    dataType: 'text',
        success: function(data) {
            $('#select_two').append(data);
        }
    });
}
</script>

ajax_fill_select_two.php:

<!-- of course you need to generate it using $_GET['id'] -->
<option value="0">text</option>
<option value="1">text</option>
<option value="2">text</option>
<option value="3">text</option>

лучшее решение - отправить JSON данные через ajax-ответ и добавить option поля к select_two через javascript

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...