jQuery的日期選擇器不斷點擊IE 8中的日期後重開,甚至在他們的演示頁:jQuery的日期選擇器保持在IE瀏覽器重新開啓
http://jqueryui.com/demos/datepicker/
有誰知道如何解決這一問題?我不知道演示頁面,但我有與jQuery 1.6.2和jQuery UI 1.8.15完全相同的問題。
此外,設置的minDate和的maxDate選項似乎不具有在IE 8. 任何影響上面似乎也是真實的IE 7.
jQuery的日期選擇器不斷點擊IE 8中的日期後重開,甚至在他們的演示頁:jQuery的日期選擇器保持在IE瀏覽器重新開啓
http://jqueryui.com/demos/datepicker/
有誰知道如何解決這一問題?我不知道演示頁面,但我有與jQuery 1.6.2和jQuery UI 1.8.15完全相同的問題。
此外,設置的minDate和的maxDate選項似乎不具有在IE 8. 任何影響上面似乎也是真實的IE 7.
1.8.14在IE8 works fine。
重新開放似乎是1.8.15中的一個錯誤,請參閱broken demo。
謝謝!我降級到1.8.14,並修復了日曆重啓問題。希望有人爲minDate和maxDate問題提供解決方案。 –
好吧,minDate和maxDate是我的錯誤。我以錯誤的格式傳遞日期。我將新日期('2011-08-16')而不是日期('08-18-2011')作爲minDate選項傳遞。 –
很高興你能解決其他部分。我搜索了jQuery UI bug列表,但沒有找到與您找到的相匹配的東西。如果我找不到現有的錯誤,我將在明天自己提出。 – andyb
我與IE8和自定義最小版本的Jquery UI 1.8.16(所有選項選擇)都有同樣的問題當我使用1.8.16的完整發布版本時,問題就消失了。
感謝您的輸入!我會確保我使用完整版本。 –
以下解決這個問題對我來說(使用jQuery 1.7.2/jQueryUI的1.8.20)
var $input = $('#date');
$input.datepicker({
/*
* your other settings here
*/
onSelect : function() { $input.blur(); },
onClose : function() { $input.change(); }
});
$input.on('change paste', function(evt) {
// process new date input here
});
你也可以在'onSelect'的'onClose'回調函數中使用'$(this)'。 –
@koiyu,你可以,但是你再次調用jQuery構造函數來爲輸入元素創建一個新的實例。使用緩存實例效率更高。 –
我們正面臨着jQuery UI的1.11.2同樣的問題。下面的代碼片段解決了我們的情況下,問題:
var input = $('<input>');
input.datepicker({
onSelect: function() {
this.lastShown = new Date().getTime();
},
beforeShow: function() {
var time = new Date().getTime();
return this.lastShown === undefined || time - this.lastShown > 500;
}
});
我只是碰到這種同樣的問題跑。它似乎是1.8.15中引入的新行爲。我正在尋找解決方法。 –
降級到jQuery UI 1.8.14爲我完成了這項工作。 –
有一個「穩定」版本的1.8.16也解決了這個問題。 –