我试图在 jquery datePicker 对象上处理相同的 onSelect 事件两次。据我了解,该事件可以多次处理,但是当我尝试这样做时,只有一个事件处理程序被触发。它似乎解雇了第二个处理程序,但没有解雇第一个处理程序。如何在不覆盖第一个事件的情况下处理相同的 onSelect 事件两次?这是有问题的代码片段。
$(document).ready(function(){
$('.test').datepicker();
...
$('.test').datepicker('option', 'onSelect', function(dateText, inst) { alert('one'); });
}
...
$(document).ready(function(){
$('.test').datepicker('option', 'onSelect', function(dateText, inst) { alert('two'); });
}
最佳答案
您使用的代码只是将第一个 onSelect 处理程序替换为第二个。如果您想做两件事,那么您需要首先获取现有的 onSelect 处理程序,然后从要替换它的处理程序中调用它。
$(function() {
$('.test').datepicker();
$('.test').datepicker('option', 'onSelect', function(dateText,inst) { alert('one'); } );
var prevHandler = $('.test').datepicker('option','onSelect');
$('.test').datepicker('option', 'onSelect', function(dateText,inst) { prevHandler(dateText,inst); alert('two'); } );
});
关于jquery datepicker onselect 事件处理程序多次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2241725/