Я разрабатываю страницу, которая должна позволить пользователям отправлять возможные научные проекты в области вычислительной техники, и на одном этапе пользователю нужно будет указать продолжительность выполнения проекта. Чтобы облегчить задачу пользователя, я пытаюсь заполнить поля from: to: using jQuery datepicker, однако я не могу заставить скрипт работать, когда пользователь выбирает соответствующее поле.
Пока у меня есть следующий скрипт:
<h:outputScript library="jquery" name="jquery-1.9.1.js"/>
<h:outputScript library="jquery" name="jquery-ui-1.10.3.custom.js"/>
<h:outputScript library="jquery" name="jquery-ui-1.10.3.custom.min.js"/>
<h:head>
<title>Add project</title>
<script type="text/javascript" id="setDate">
$(function() {
$(" #datepicker ").datepicker();
});
</script>
<!-- rest omitted for readability -->
и мой h: inputText выглядит так:
<h:inputText id="setDate" value="" onclick="$('#datepicker').datepicker();"/>
<p>Date: <input type="text" id="datepicker" /></p>
Я попытался заставить его работать без использования каких-либо тэгов jsf и смог его запустить и запустить, но я просто могу заставить его работать с тэгами jsf.
Проблема в том, что когда в браузере виджет jQuery datepicker не отображается при нажатии на поле. Нажатие на поле, определенное с помощью стандартного <input>
работает правильно.
Любая помощь очень ценится, спасибо.
Мне удалось решить мою проблему следующим образом:
Изменен мой сценарий:
<script type="text/javascript">
$(document).ready(function() {
$(".datepicker").datepicker({
});
});
</script>
и мой тег jsf:
<h:inputText styleClass="datepicker"/>
Теперь, когда я выберу поле, отобразится виджет датпикера. Спасибо DannyThunder за то, что поставили меня на правильный путь.
<script type="text/javascript">
$( document ).ready(function() {
function openDatePicker(){
$("#datepicker").datepicker();
}
});
</script>
<h:inputText id="setDate" value="" onclick="openDatePicker();"/>
<p>Date: <input type="text" id="datepicker" /></p>
Надеюсь, что это сработает для вас (не проверял).