2014-12-02 44 views
-2

當我選擇日期時,datepicker重新打開本身,因爲我添加了$(this).focus();在onSelect。我該如何解決這個問題? (Example)避免在日期選擇後在Internet Explorer中重新打開日期選擇器

$('#datepicker').datepicker({ 
    onSelect : function(x, u){ 
    $(this).focus(); 
    } 
}); 

我想要那個焦點必須。我無法消除那個焦點。請告訴我一些解決方案,而不要消除這個焦點。

+2

它工作完美的小提琴..什麼問題? – 2014-12-02 06:40:23

+0

在鉻中工作正常。 – 2014-12-02 06:40:45

+0

它只發生在IE瀏覽器 – 2014-12-02 06:40:54

回答

-1

請注意,在jquery ui datepicker選擇之後,模糊和更改事件在焦點返回到輸入字段之前觸發,IE中焦點事件始終存在問題。

解決方法是以下

//Example using triggerHandler 
$(function() { 
    "use strict"; 
    $('#datepicker').datepicker({ 
     onSelect : function(x, u){ 
      format: "dd/mm/yyyy" 
     }, 
     onClose: function(dateText) { 
      $(this).triggerHandler("focus"); 
      $(this).triggerHandler("blur"); 
     } 
    }); 
}); 

給這對我的工作, 使用triggerHandler http://jsfiddle.net/shaikhimran786/w6fvuL18/

使用triggerHandler解決問題是指

//例。

triggerHandler()方法觸發所選元素的指定事件。

除了trigger()還觸發事件的默認行爲(如表單提交)之外,此方法與trigger()方法類似。

和另一種解決方案是

//Example using hide datepicker 
$(function() { 
    "use strict"; 
    $('#datepicker').datepicker({ 
     onSelect : function(x, u){ 
      format: "dd/mm/yyyy" 
     } 
    }); 
    $('.dp').on('change', function() { 
     $('.datepicker').hide(); 
    }); 
}); 

參考以下鏈接

//例使用隱藏日期選擇器 http://jsfiddle.net/shaikhimran786/xj9tkvtd/

希望此修復程序將幫助你解決你的問題。

相關問題