Мне нравится, что jQueryUI datepicker достаточно настраиваемый, чтобы позволить кнопке вызывать отображение datepicker, но, к сожалению, он не позволяет вам настраивать вашу собственную разметку.
Если у меня есть разметка, как так:
<span>
<input type="text" class="datepicker" />
</span>
<span>
<button class="datepicker-trigger">Open</button>
</span>
Чтобы получить указатель даты, отображаемый при нажатии кнопки, мне нужно будет реализовать следующий код:
$('.datepicker').datepicker({
showOn:'none'
});
$('.datepicker-trigger').click( function() {
$('.datepicker').datepicker('show');
});
Вот jsFiddle приведенного выше кода: http://jsfiddle.net/P9Qmu/
Это все хорошо, но я действительно хочу сделать, это передать функции datepicker дополнительный аргумент, который указывает объект или селектор, указывающий, какой элемент должен вызыватьпоказывая.
Например, мне бы очень хотелось сделать это:
$('.datepicker').datepicker({
showOn:'none',
trigger:'.datepicker-trigger'
});
Я знаю, как расширить jQuery для добавления методов и создания плагинов, но я неуверен, как (или если это возможно) изменить разрешенные аргументы в существующей функции.
Кто-нибудь знает, как я могу расширить $.datepicker
, чтобы достичь того, что я ищу, или, по крайней мере, указать мне,в правильном направлении?Любая помощь будет высоко ценится.