Нужна помощь, добавлена привязка опции для выбора списка

#php #jquery #multi-select

#php #jquery #множественный выбор

Вопрос:

Мне нужно отключить некоторые параметры в списке выбора после того, как я динамически добавлю параметры.

Мой список выбора динамически создается при выборе элемента из другого списка.
Список создается на PHP, затем возвращается в мой javascript с помощью $.ajax вызова. Как только параметры будут добавлены в мой список, мне нужно перебрать параметры и отключить определенные параметры.

Я могу добавить параметры, но я не могу отключить определенные параметры. Я думаю, это потому, что параметры не привязаны к DOM (или что-то в этом роде).

Это код, который я использую сейчас:

 // HTML
<select id='selectlist_store' name='selectlist_store' size='6' multiple='multiple'></select>


// Javascript
// Populate store multi-select list
jQuery('#selectlist_city').live('change', function(){
  populateStoreListBox(jQuery(this).val(),  function(list) {
    // Add options to list
    jQuery('#selectlist_store').html(list);
    // Disable specific element
    jQuery('#selectlist_city option [value=56]').attr('disabled','disabled');
  });
});


function populateStoreListBox(country_id, callback){
  jQuery.ajax({
    url: (...),
    data: (...),
    dataType: 'html',
    success: (function(city_list) {
        callback(city_list);
  })
}); 
  

Что мне нужно сделать, чтобы отключить некоторые параметры после того, как я их добавил?

Одним из решений, возможно, было бы вернуть JSON массив вместо HTML , затем выполнить цикл по массиву и динамически создать мой новый список опций и отключить параметры, которые я хочу отключить.

Но есть ли другой способ?

Ответ №1:

Вам нужно удалить пробел перед [

 jQuery('#selectlist_city option[value=56]').attr('disabled','disabled');
  

http://jsfiddle.net/pYBqm/

Комментарии:

1. Хах! Вот так просто. Спасибо, приятель!