заполнить выбор из другого значения выбора с помощью jquery - PullRequest
2 голосов
/ 08 апреля 2011

Привет всем, я видел много вопросов, но никто не удовлетворил мою жажду.Я хочу заполнить выбор на основе одного другого выбора.Я использую Zend Framework.У меня есть выбор, который выберет учетную запись, и на основе этого выбранного идентификатора я хочу заполнить другой выбор значениями, извлеченными из базы данных на основе первого выбранного варианта.Сначала я выбрал что-то вроде этого

<select name='select1'>
<option value='1'>accoutn1</option>
<option value='2'>accoutn2</option>
<option value='3'>accoutn3</option>
<option value='4'>accoutn4</option>
</select>

Теперь то, что я хочу, на основе первого выбора, другой другой выбор заполняется с помощью jquery.Опции будут значениями, выбранными из базы данных на основе первого выбранного значения.Мой другой выбор -

<select name='client'>
</select>

Какая функция jquery поддерживает это, чтобы я мог получать значения из базы данных на основе выбранного параметра и заполнять другой выбор.Я использую работу Zendframe.Любая идея?

Ответы [ 4 ]

3 голосов
/ 08 апреля 2011

Если вы используете jQuery, вы можете использовать этот плагин

Демонстрация и использование показаны здесь

1 голос
/ 08 апреля 2011

Используя события, вы можете связать первый выбор. Вместо имени используйте ID или класс.

Используя $ .get (), вы можете динамически получать информацию со страницы php. Заставьте эту страницу php отобразить теги

, необходимые для второго раскрывающегося списка.

Свяжите это в событие onclick, чтобы получить текущее выбранное значение, ИЛИ используйте селектор, чтобы получить его:

var SelectedVal = $('#option1').val();
var Content;

$.get('GetValues.php?SelectedValue=' + SelectedVal , function(data) {
 Content = data;
});

Затем с помощью $ ('# client'). Append (Content); Вы можете заполнить выбор. Добавить добавит «Содержимое» внутри тега.

Надеюсь, это даст вам хорошую отправную точку.

0 голосов
/ 08 апреля 2011

Вам необходимо привязать событие изменения для вашего первого выпадающего списка. Затем в этом раскрывающемся списке вам нужно вызвать функцию ajax для вашей страницы php, которая даст вам новый выбор для вашего второго раскрывающегося списка. и в функции успеха ajax первого выпадающего списка вы заполните второй выпадающий список.

Для вызова ajax вы можете увидеть http://api.jquery.com/jQuery.ajax/

Пример:

<select id='ddl_account'>
    <option value='1'>accoutn1</option>
    <option value='2'>accoutn2</option>
    <option value='3'>accoutn3</option>
    <option value='4'>accoutn4</option>
</select>

<select id='ddl_account_2nd'>
</select>

$(document).ready(function(){
    $('#ddl_account').change(function(){
       $.ajax({
          type: "POST",
           url: "account.php",
           data: "account=" + $(this).val(),
          success: function(options){
            //options = "<option value='1'>accoutn1</option><option value='2'>accoutn2</option>"
            $('#ddl_account_2nd').empty().append(options);
          }
        });
    })

})
0 голосов
/ 08 апреля 2011

Посмотрите на jQuery Ajax API.

...