Когда страница заканчивается загрузкой в веб-браузере, JSF уже выполнила свою работу по генерации группы HTML на веб-сервере и отправке ее веб-браузеру.После этого он больше ничего не сможет сделать для вас.Вам нужно использовать JavaScript для этой работы.Он может выполнять код после завершения загрузки страницы и имеет доступ ко всем элементам в дереве HTML DOM.
Итак, если вы укажете фиксированный идентификатор для выпадающего элемента в JSF,
<h:form id="myform">
<h:selectOneMenu id="mydropdown">
...
</h:form>
тогда вы должны быть в состоянии захватить его с помощью JavaScript:
var mydropdown = document.getElementById('myform:mydropdown');
В JavaScript вы можете использовать element.focus()
, чтобы установить фокус на элементе:
mydropdown.focus();
Чтобы заставить его исполниться после завершения загрузки страницы, необходимо подключить функцию к window.onload
:
window.onload = function() {
var mydropdown = document.getElementById('myform:mydropdown');
mydropdown.focus();
}
Вот и все.Поместите его в <script>
где-нибудь в нижней части <head>
или .js
файла, который вы включаете в <script src>
.