вызвать JQuery DatePicker через функцию - PullRequest
0 голосов
/ 24 мая 2011

У меня длинный список предметов с полями даты. Разрешение jQuery назначать указатель даты всем элементам с классом указателя даты создает всплывающий сценарий ( что-то в этом сценарии работает очень долго, хотите ли вы остановить сценарий, да или нет ) не говоря уже о том, что на оформление документа требуется некоторое время. Когда мы удаляем класс datepicker, страница отображается почти сразу. Итак, что я хотел бы сделать - это иметь поле ввода, в котором дата обычно заполняется триггером (ссылкой или графиком), по которому можно щелкнуть, чтобы запустить всплывающий календарь DatePicker. Таким образом, нам нужно предоставить всплывающий календарь только на поле, которое действительно ему нужно.

Идентификаторы недоступны, только атрибут имени.

    <tr>
    <td><input type='text' name='StartDate' /> <span onclick='ShowCalendar()'>Calendar</span></td>
    <td>other fields</td>
    <td>more fields</td>
    </tr>

Ответы [ 3 ]

0 голосов
/ 24 мая 2011

Я попробовал следующее:

<script type="text/javascript">
    function createDatepicker(input) {
        $(input).datepicker().datepicker("show");
    }
</script>

<input type="text" name="someText" /><br />
<input type="text" name="someDate" onclick="createDatepicker(this)" /><br />
<input type="text" name="someText" /><br />
<input type="text" name="someDate" onclick="createDatepicker(this)" /><br />

Используя этот ответ, я построил вышеупомянутое решение: Как запустить средство выбора даты при первом событии onclick?

0 голосов
/ 06 августа 2013

Вам нужно было загрузить файлы DatePicker на страницу. Тогда используйте что-то вроде этого В приведенном ниже коде «todo_date» - это идентификатор текстового поля, который используется для запуска средства выбора даты jquery.

$( "#todo_date" ).datepicker();
function myFunc(){
  $("#calendar_img").click(function(e) { 
     $("#todo_date").datepicker("show");
  });
}

Надеюсь, это поможет

0 голосов
/ 24 мая 2011

Что вы можете сделать, это передать текущий элемент в функцию ShowCalendar с помощью ключевого слова this. Затем вы можете использовать его в качестве справочного материала для поиска соответствующего поля даты, обходя дом с помощью функций jQuery. В вашем примере вы можете использовать функцию prev ().

<tr>
<td><input type='text' name='StartDate' /> <span  onclick='ShowCalendar(this)'>Calendar</span></td>
<td>other fields</td>
<td>more fields</td>
</tr>
...