Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Как программно выбрать опцию в Select, стандартные решения не работают (https://javascript.ru/forum/dom-window/83623-kak-programmno-vybrat-opciyu-v-select-standartnye-resheniya-ne-rabotayut.html)

Dimoniks 27.01.2022 14:59

Как программно выбрать опцию в Select, стандартные решения не работают
 
Есть select:
<select class="form-control select2-demo w-100 select required select2-hidden-accessible" data-nsi-source="quality_check_kind" required="required" aria-required="true" name="quality_check[quality_check_kind_id]" id="quality_check_quality_check_kind_id" data-select2-id="quality_check_quality_check_kind_id" tabindex="-1" aria-hidden="true"><option value="" data-select2-id="2">Не выбрано</option>
<option data-nsi="{&quot;id&quot;:&quot;770&quot;,&quot;parent_id&quot;:&quot;&quot;,&quot;code&quot;:&quot;1&quot;,&quot;name&quot;:&quot;Блокирующая&quot;,&quot;type&quot;:&quot;Nsi::TableContent::QualityCheckKind&quot;,&quot;tag&quot;:&quot;quality_check_kind&quot;,&quot;content&quot;:&quot;&quot;}" value="770">Блокирующая</option>
<option data-nsi="{&quot;id&quot;:&quot;771&quot;,&quot;parent_id&quot;:&quot;&quot;,&quot;code&quot;:&quot;2&quot;,&quot;name&quot;:&quot;Уведомительная&quot;,&quot;type&quot;:&quot;Nsi::TableContent::QualityCheckKind&quot;,&quot;tag&quot;:&quot;quality_check_kind&quot;,&quot;content&quot;:&quot;&quot;}" value="771">Уведомительная</option></select>


Не могу сделать активной (выбранной) какую либо опцию. Перепробовал все найденные методы, но так и не добился результата.
Последнее что пробовал использовать: document.getElementById("quality_check_quality_che ck_kind_id").options[2].selected=true; но и этот метод не работает.
Гуру, подскажите пожалуйста, как при помощи js заставить этот select выбрать нужную мне опцию?

рони 27.01.2022 15:27

Dimoniks,
Пожалуйста, отформатируйте свой код!

Для этого его можно заключить в специальные теги: js/css/html и т.п., например:
[html run]
... минимальный код страницы с вашей проблемой
[/html]

О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting.

вы что-то не договариваите ... может почитать про DOMContentLoaded
<select class="form-control select2-demo w-100 select required select2-hidden-accessible" data-nsi-source="quality_check_kind" required="required" aria-required="true" name="quality_check[quality_check_kind_id]" id="quality_check_quality_check_kind_id" data-select2-id="quality_check_quality_check_kind_id" tabindex="-1" aria-hidden="true"><option value="" data-select2-id="2">Не выбрано</option>
<option data-nsi="{&quot;id&quot;:&quot;770&quot;,&quot;parent_ id&quot;:&quot;&quot;,&quot;code&quot;:&quot;1&quo t;,&quot;name&quot;:&quot;Блокирующая&q uot;,&quot;type&quot;:&quot;Nsi::TableContent::Qua lityCheckKind&quot;,&quot;tag&quot;:&quot;quality_ check_kind&quot;,&quot;content&quot;:&quot;&quot;} " value="770">Блокирующая</option>
<option data-nsi="{&quot;id&quot;:&quot;771&quot;,&quot;parent_ id&quot;:&quot;&quot;,&quot;code&quot;:&quot;2&quo t;,&quot;name&quot;:&quot;Уведомительн ая&quot;,&quot;type&quot;:&quot;Nsi::TableConten t::QualityCheckKind&quot;,&quot;tag&quot;:&quot;qu ality_check_kind&quot;,&quot;content&quot;:&quot;& quot;}" value="771">Уведомительная</option></select>
<script>
document.getElementById("quality_check_quality_check_kind_id").options[2].selected=true;
</script>

Dimoniks 28.01.2022 12:51

Да что тут можно не договаривать?) Есть страница, которая вносит в базу портала новый набор данных. На странице есть обычные текстовые поля, с заполнением которых при помощи js проблем не возникло. Мне, для ускорения процесса внесения данных, необходимо научится программно делать выбор из нескольких select'ов выбор нужного мне значения. Пример одного такого селекта я привел в своем первом сообщении, остальные работают по тому же принципу что и первый.
Я перепробовал все возможные методы, которые смог найти в интернете, но так и не смог заставить select сделать нужный мне выбор.
Очень надеюсь на помощь в решении этого вопроса.

рони 28.01.2022 13:03

Dimoniks,
:-?

Morris 03.02.2022 23:02

Бота делаете?

Dimoniks 11.05.2022 15:27

Нет, просто есть необходимость регулярно заполнять рутинные данные на сайте в больших объемах.
Здесь, на сайте скрипт работает нормально, но стоит выполнить его программно, он не выполняет свою функцию. Но те же самые input'ы программно скриптом очень легко заполняются.


Часовой пояс GMT +3, время: 16:05.