Трудно было найти условия для хорошего поиска (поэтому, пожалуйста, извините меня, если тема уже обсуждалась), а также явное название этого сообщения.Как динамически изменять выбранную опцию и обновлять ее без перезагрузки?
Я работаем над этой внешней веб-страницей: https://espacepersonnel.bnf.fr/views/mes_notices.jsf (необходимо войти в систему) , и я пытаюсь переопределить выбранную по умолчанию опцию с той, которая имеет значение = "0". Пользовательский код js, который я написал, отправляет форму, но только после того, как страница была загружена. Тем не менее я хотел бы изменить значение выбора до этого.
Вот часть этого заинтересованного Кодекса этой страницы (что, конечно, я не могу редактировать):
<form id="noticeComp:mainForm" name="noticeComp:mainForm" method="post" action="/views/mes_notices.jsf" class="noticeForm" enctype="application/x-www-form-urlencoded">
<input type="hidden" name="noticeComp:mainForm" value="noticeComp:mainForm">
<input type="hidden" name="noticeComp:mainForm:j_idt253" value="">
<input type="hidden" name="noticeComp:mainForm:j_idt254" value="false">
<!-- <div id="site"> -->
<!-- <div class="moncatagen"> -->
<!-- <div class="col2"> -->
<h1 class="h1small">
<span>
<select name="noticeComp:mainForm:j_idt256" size="1" onchange="submit()">
<option value="0">Toutes les notices</option>
<option value="1" selected="selected">Notices biblio.</option>
<option value="2">Notices d'autorités</option>
</select>
Notices
</span>
</h1>
</form>
А вот мой собственный «content_script»:
var elm;
var evt;
elm = document.getElementsByName('noticeComp:mainForm:j_idt256')[0];
evt = document.createEvent("HTMLEvents");
evt.initEvent("change", false, true);
while(!document.getElementsByName('noticeComp:mainForm:j_idt256')[0].options[0].selected){
document.getElementsByName('noticeComp:mainForm:j_idt256')[0].options[0].selected="selected";
elm.dispatchEvent(evt);
}
Вы можете увидеть решение для меня ? (Лучше, если только JS)
Большое спасибо за чтение этого сообщения и ответ на него, если сможете.
Bigindian.
PS: Простите мой английский
NB: Результат страницы:
Javascript не может быть инициализирован до загрузки страниц. Javascript - это только язык на стороне клиента. –