在现有的jqueryui DatePicker'onSelect'事件中附加/添加功能?

时间:2013-07-01 12:38:36

标签: jquery jquery-ui datepicker

我试图在现有的调用堆栈中追加或添加一个函数,用于jqueryui的datepicker'onSelect'事件,但是我失败了。

我已经粘贴了一个我想在这里做的事情的例子。

基本上,在第一次选择日期选择器之后,它应该alert('abc'),然后是alert('def')

http://jsfiddle.net/cfE7w/

任何建议表示赞赏。

1 个答案:

答案 0 :(得分:2)

你打电话之后

$('#hello').datepicker("option", "onSelect", function(){
    var prevFunction ...

当前的事件处理程序已经是新的!因此,当事件触发并执行以下代码时

var prevFunction = $(this).datepicker("option","onSelect");

prevFunction指向自己。您可以使用IIFE解决此问题:

$('#hello').datepicker("option", "onSelect", 
  (function() {
    var prevFunction = $('#hello').datepicker("option","onSelect");
    return function(){
      prevFunction();
      alert('def');
   };
 }()));

立即调用var prevFunction = ..并存储旧处理程序。新处理程序已分配return function(){ ...