jQuery日期选择器不关闭

问题描述:

我的jQuery datepicker只在选择日期时关闭,但我希望它在用户单击关闭按钮时或关闭按钮时关闭。但是,即使将showButtonPanel选项设置为true,关闭按钮也不会显示,但“今日”按钮会执行此操作。jQuery日期选择器不关闭

我认为它可能有自定义的onSelect操作,而不是默认的,但不知道如何自己关闭它。尝试使用$ .datepicker('hide')和('destroy'),但没有区别。

$(document).ready(function() { 
    $.datepicker.setDefaults({firstDay: 1, dateFormat: 'dd/mm/yy', showAnim: 'fade'}); 
});  
$(document).delegate('.editEndDate', 'click', function() {    
$('.formattedEndDate').datepicker({ 
    defaultDate: $('.formattedEndDate').attr('id'), 
    onSelect: function(dateText, inst) { 
    var date = dateText; 
    var data = 'project=' + projectId + '&date=' + date + '&dateToChange=end'; 
     $.ajax({ 
      type: 'POST', 
      url: 'helpers/change-project-date.php', 
      data: data + '&ajax=1', 
      success: function(response){ 
       getNotification(response); 
       $('.formattedEndDate').fadeOut(function() { 
        $(this).load(location.href+ ' .formattedEndDate', function() { 
         $(this).fadeIn('slow'); 
        }); 
       });  
      }, 
      error: function(response){ 
       getNotification(response); 
      }, 
      complete: function(response){ 
       $('.formattedEndDate').datepicker('hide'); 
      } 
     }); 
    } 
}); 
return false; 
}); 

这可能是简单的东西,但我不能看到它。提前致谢。

+0

使用这个脚本的$(document)。点击(函数(E){VAR ELE = $(e.target);! 如果(ele.hasClass( “hasDatepicker”)&& ele.hasClass( “ui-datepicker”)&&!ele.hasClass(“ui-icon”)&&!$(ele).parent()。parents(“。ui-datepicker”)。 datepicker(“hide”); }); – 2014-10-07 13:25:45

我可能已经找到了解决我自己的问题......

$('.ui-datepicker').live('mouseleave', function() { 
    $('.ui-datepicker').fadeOut(function() { 
     $('.formattedStartDate').attr('class', 'formattedStartDate'); 
     $(this).remove(); 
    }); 
}); 

这个工作对我来说,希望这会为别人打工了。

当我尝试使用现场时,一切都炸毁了。所以我不得不使用。我还添加了输入焦点隐藏。所以如果你碰巧专注于不同的领域,日历不仅仅是在附近。我也只是隐藏了,但如果这是你想要的,你应该能够将它切换为淡入淡出状态。

$('.bootstrap-datetimepicker-widget').on('mouseleave', function() { 
     $(this).hide(); 
    }) 
    $('input').on('focus', function() { 
     $('.bootstrap-datetimepicker-widget').hide(); 
    });