Zend - значение в выпадающем списке в зависимости от другого значения в выпадающем списке

Есть ли способ в Zend Framework заполнить комбинированный список значениями, зависящими от значения, выбранного в предыдущем комбинированном окне, но на той же странице?

В моем случае у меня есть комбинированный список для домена и один для специализации. Если я выберу информатику в первом поле со списком (домен), я хочу заполнить второй с одной специализации - "Информатика". Но если я выберу математику в первой, я хочу заполнить вторую двумя специализациями: "Математика" и "Математика и информатика".

Спасибо! Сорин

2 ответа

Решение

Я использовал очень простое решение: я выбрал вариант выбора домена на одной странице и вариант выбора специализации на другой странице в зависимости от выбранного домена.

Если у вас есть данные о взаимоотношениях между доменом и специализацией в базе данных на вашем сервере. вы можете присоединить слушатель к событию изменения к комбинированному окну вашего домена и заполнить второе комбинированное поле соответствующим образом, извлекая специализации для выбранного домена с помощью пост-запроса ajax:

Вот пример использования jquery:

 $(".domain").change(function()
{
  var domainId=$(this).val();
  var dataString = 'domainId='+ domainId; 

 $.ajax
 ({
   type: "POST",
   url: baseurl+"getSpecialisations", 
   data: dataString,
   cache: false,
   success: function(html)
          {
            $(".specialisation").html(html);
          }
 });
});

и в вашем контроллере создайте действие getSpecialisationsAction, которое будет извлекать спецификации вашего домена, посмотрите здесь пример того, как отправить запрос на отправку в действие Zend.

Другие вопросы по тегам