我试图在
jquery datePicker对象上处理相同的onSelect事件两次.根据我的理解,事件可以多次处理,但是当我尝试这个时,只有一个事件处理程序被触发.它似乎解雇了第二个处理程序,但不是第一个处理程序.如何在不覆盖第一个事件的情况下两次处理相同的onSelect事件?这是问题代码段.
- $(document).ready(function(){
- $('.test').datepicker();
- ...
- $('.test').datepicker('option','onSelect',function(dateText,inst) { alert('one'); });
- }
- ...
- $(document).ready(function(){
- $('.test').datepicker('option',inst) { alert('two'); });
- }
解决方法
您正在使用的代码只是用第二个替换第一个onSelect处理程序.如果你想做两件事,那么你需要首先获得现有的onSelect处理程序,然后从你要替换它的处理程序中调用它.
- $(function() {
- $('.test').datepicker();
- $('.test').datepicker('option',inst) { alert('one'); } );
- var prevHandler = $('.test').datepicker('option','onSelect');
- $('.test').datepicker('option',inst) { prevHandler(dateText,inst); alert('two'); } );
- });