5

jQuery के datepicker आईई 8 में एक तिथि पर क्लिक करने के बाद फिर से खोलने रखता रहता है, यहां तक ​​कि उनके डेमो पृष्ठ पर:jQuery datepicker IE में फिर से खोलने

http://jqueryui.com/demos/datepicker/

किसी को भी पता है कि यह कैसे तय करने के लिए? मुझे डेमो पेज के बारे में पता नहीं है, लेकिन मुझे jQuery 1.6.2 और jQuery UI 1.8.15 के साथ एक ही समस्या है।

इसके अलावा, minDate और maxDate सेटिंग विकल्पों आईई 8 में कोई असर दिखाई नहीं देता है ऊपर भी आईई 7

+0

मैं सिर्फ यह एक ही समस्या का सामना करते भागा: निम्नलिखित स्निपेट हमारे मामले में समस्या हल हो। यह 1.8.15 में पेश किया गया नया व्यवहार प्रतीत होता है। मैं एक कामकाज की तलाश में हूँ। –

+0

jQuery UI 1.8.14 में डाउनग्रेड करने के लिए मेरे लिए काम किया। –

+0

1.8.16 का "स्थिर" संस्करण है जिसमें इस समस्या को भी ठीक किया गया है। –

उत्तर

1

1.8.14 IE8 में works fine के साथ सच हो रहा है।

पुन: खोलने 1.8.15 में एक बग प्रतीत होता है, broken demo देखें।

+0

धन्यवाद! मैं 1.8.14 तक डाउनग्रेड कर दिया, और यह कैलेंडर फिर से खोलने की समस्या तय कर दिया। आशा है कि किसी के पास मिनीडेट और मैक्सडेट मुद्दों के लिए समाधान हो। –

+0

ठीक है, minDate और maxDate मेरी त्रुटि थी। मैं गलत प्रारूप में तारीख पारित कर रहा था। मैं तारीख ('08 -18-2011 ') की बजाय न्यूनतम तिथि (' 2011-08-16 ') पास कर रहा था। –

+0

खुशी है कि आपको दूसरा हिस्सा हल हो गया है। मैंने jQuery UI बग सूची की खोज की लेकिन कुछ भी जो आपको मिला उससे मेल खाता है। अगर मैं मौजूदा बग नहीं पा रहा हूं तो मैं कल इसे उठा दूंगा। – andyb

1

मेरे पास IE8 के साथ एक ही समस्या थी और Jquery UI 1.8.16 (सभी विकल्पों का चयन) का अनुकूलित न्यूनतम संस्करण था जब मैंने 1.8.16 के पूर्ण रिलीज़ संस्करण का उपयोग किया, तो समस्या दूर हो गई।

+0

उस आवेग के लिए धन्यवाद! मैं सुनिश्चित करूँगा कि मैं पूर्ण संस्करण का उपयोग कर रहा हूं। –

8

निम्नलिखित मेरे लिए इस मुद्दे (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 
}); 
+0

आप 'ऑन-सिलेक्ट' और 'ऑनक्लोस' के कॉलबैक फ़ंक्शंस के भीतर '$ (this)' का भी उपयोग कर सकते हैं। –

+1

@koiyu, तो आप इनपुट तत्व के लिए एक नया उदाहरण बनाने के लिए फिर से jQuery कन्स्ट्रक्टर को कॉल कर रहे हैं। कैश किए गए उदाहरण का उपयोग करने के लिए अधिक कुशल। –

1

हम 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; 
 
    } 
 
});