7

假设我有一个#date 字段。起初我用一些选项初始化它(目前它们并不重要):

$('#date').datepicker(options);

然后,如果我尝试添加onClose功能,我会这样做:

$('#date').datepicker({onClose: function(dateText, inst){console.log("Hello World");}});

但是,这会覆盖之前设置的选项。假设我无权访问这些选项 - datepicker 已初始化,选项已设置,现在我需要添加 function onClose。怎么做?我试过.datepicker('option','onClose',function(){});没有效果。

4

5 回答 5

6

试试看

$('#date').datepicker( 'option' , 'onClose', function() {} );
于 2013-03-07T11:13:38.263 回答
5

Try this:

$('#date').datepicker();
...
$('#date').datepicker("option", {
  onClose: function(dateText, inst){console.log("Hello World");}
});

Of course this would override the previous onClose function you've set before. source: jQuery forum post

于 2013-11-07T12:04:38.460 回答
0

在初始化中将您的关闭功能定义为您的选项之一。这对我有用。

$('#date').datepicker({
    dateFormat: "dd/mm/yy",
    onClose: function(dateText, inst){console.log("Hello World");}
});
于 2014-04-08T19:38:28.790 回答
0

尝试这个 :

$('#date').datepicker().bind('onClose',function(){
    console.log("Hello World");
});
于 2013-03-07T11:18:07.760 回答
0

我也面临同样的问题,旧的关闭功能被替换。经过大量搜索,我已经实现了自己的功能来处理这个问题。下面是代码片段

function addCloseFunctionToDatePicker(id, funHandler) {
    var $datePicker=$('#' + id);
    var prevhandler = $datePicker.datepicker('option', 'onClose');
    $datePicker.datepicker('option', {
        onClose: function (dateText, inst) {                    
            if (prevhandler) {
                prevhandler(dateText, inst);
            }
           funHandler(dateText, inst);                
        }            
    });    
}

调用机制:

 addCloseFunctionToDatePicker('myDatePicker', function(){ alert("I'm next method"); });
于 2015-09-09T08:29:48.010 回答