jQuery 用の単純なプラグインを作成しました。これは、2 つの指定された datePicker に minDate と maxDate を設定します。今、私はそれを拡張し、日付を設定する機能を追加したいと考えています。
JS
(function($) {
$.fn.dateRange = function(){
return this.each(function () {
var from, to;
var self = $(this);
var selectedDate;
$("input",this).prop('readonly', true);
from = $('.from',this);
to = $('.to',this);
from.datepicker({
onClose:function( selectedDate ) {
$(this).siblings(".to").datepicker( "option", "minDate", selectedDate );
}
});
to.datepicker({
onClose:function( selectedDate ) {
$(this).siblings(".from").datepicker( "option", "maxDate", selectedDate );
}
});
//add a function
this.setDate = function (f, t) {
from.datepicker("option",{
defaultDate: new Date(f),
maxDate: new Date(t)
}).val(f);
to.datepicker("option",{
defaultDate: new Date(t),
minDate: new Date(f)
}).val(f);
};
});
};
})(jQuery);
$("div.dateRange").dateRange();
//later
$("#label1").dateRange().setDate("07/02/2013","07/06/2013");
コンソールは言う: Uncaught TypeError: Object [object Object] has no method 'setDate'. プラグインに機能を追加する最良の方法は何ですか?
ここに jsbin があります: http://jsbin.com/acovuj/2/edit