#javascript #jquery #select #internet-explorer-6
#javascript #jquery #выберите #internet-explorer-6
Вопрос:
У меня возникли некоторые проблемы с элементом select. Я хочу иметь возможность изменять выбранный параметр программно, с поддержкой IE6 (это плохой парень!). Итак, что я делаю, это устанавливаю SelectedIndex со значением, которым он должен быть, теперь возникает предостережение, это не работает, когда элемент управления отключен, поэтому я включаю его, а затем пытаюсь изменить SelectedIndex в этом порядке. Элемент управления включается, но выбор не изменяется.
У кого-нибудь есть какие-либо предложения?
Я попытался изменить индекс с помощью следующих кодов:
this._select.attr('selectedIndex',index);
и
this._select.get(0).selectedIndex = index;
Комментарии:
1. Можете ли вы опубликовать имеющийся у вас код, чтобы мы могли увидеть, что вы уже пробовали.
2. Пожалуйста, опубликуйте свой код, ваш вопрос довольно бесполезен без него. Вы также могли бы попробовать настроить небольшой пример на jsfiddle. net или jsbin.com .
3. Код слишком сложный, чтобы публиковать его здесь, я безуспешно пытался изолировать эту проблему, так что проблема не в включении элемента select. Но если я установлю задержку между включением и изменением индекса, это сработает, так что это просто странно.
4. Я создал скрипку с моим лучшим пониманием и публикую здесь .. jsfiddle.net/u5uhD . Если кто-то еще понимает это немного лучше, обновите эту скрипку и опубликуйте здесь, пожалуйста
5. Опубликуйте HTML, который прилагается к этому, а также дополнительную часть кода Javascript — было бы полезно знать, когда и в каком контексте вы вызываете этот код.
Ответ №1:
Ваш код сработал у меня, даже выбор был отключен. Почему бы вам не использовать this._select.val('3');
, чтобы изменить это? В любом случае this._select.val('3')
сработало так же хорошо , как this._select.get(0).selectedIndex = index;
Проверьте консоль ошибок в вашем браузере, возможно, у вас ошибка, которая останавливает работу всего скрипта.
Комментарии:
1. Потому что мне нужна была поддержка IE6.