में वर्ष के क्रम को उलट देता है मेरे पास चेंजियर के साथ डेटपिकर है: सत्य। 'वर्ष' ड्रॉप डाउन 200 9 के रूप में शीर्षक प्रदर्शित करता है, फिर अगले वर्ष के बजाय 2008, 2007, 2006 के शीर्षक के नीचे और इसी तरह 1 999 से शुरू होता है और ऊपर की गणना करता है। मुझे इस आदेश को रिवर्स करने का आसान समाधान नहीं मिल रहा है?JQuery UI Datepicker, ड्रॉपडाउन
उत्तर
मैं मूल ui.datepicker.js को Cuong के रूप में संपादित करने की अनुशंसा नहीं करता क्योंकि सुझाव दिया गया है कि जैसे ही कोई नया डेवलपर रिलीज़ हो जाएगा, जैसे ही कोई नया डेवलपर फ़ाइल को बदल देता है। याद रखना कि पुनः आवेदन करने के लिए क्या अनुकूलन किए गए हैं व्यावहारिक नहीं है। इसके बजाय, आप तो जैसे अपनी खुद की अलग जे एस में मौजूदा _generateMonthYearHeader
विधि ओवरराइड कर सकते हैं:
// store original so we can call it inside our overriding method
$.datepicker._generateMonthYearHeader_original = $.datepicker._generateMonthYearHeader;
$.datepicker._generateMonthYearHeader = function(inst, dm, dy, mnd, mxd, s, mn, mns) {
var header = $($.datepicker._generateMonthYearHeader_original(inst, dm, dy, mnd, mxd, s, mn, mns)),
years = header.find('.ui-datepicker-year');
// reverse the years
years.html(Array.prototype.reverse.apply(years.children()));
// return our new html
return $('<div />').append(header).html();
}
मैं सिर्फ कुछ के लिए यह लिखा मैं पर काम कर रहा हूँ और यह चाल अच्छी तरह से करता है :)
- ओपन फाइल
ui.datepicker.js
- विधि
_generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate, selectedDate, secondary, monthNames, monthNamesShort)
विधि
for (; year <= endYear; year++) { html += '<option value="' + year + '"' + (year == drawYear ? ' selected="selected"' : '') + '>' + year + '</option>'; } html += '</select>';
सम्मिलित है कि पाश से पहले निम्न कोड में निम्नलिखित पाश खोजें खोजें:
if (year-100 < 1900) // Check year is lower then 1900 year = 1950; // change start point of above loop, it helps you having the // year's dropdownlist starting at 1950, and ending of current year plus 10.
ठीक वही है जो मैं आपको धन्यवाद देने के बाद था! – Lance
साथ for
पाश की पहली पंक्ति बदलें:
var minYear = year;
year = endYear;
for (; year >= minYear; year--) {
मैं आप के लिए एक जवाब है, लेकिन यह वास्तव में क्या आप सुनना चाहते हो सकता है नहीं है।
एक समाधान है कि लटकती में साल का क्रम उलटने हैं के लिए इंटरनेट खोज के बाद, मैं इस के लिए आए हैं:
{
changeMonth: true
, changeYear: true
, yearRange: '-65:'
, maxDate: '1999/12/31'
}
यह maxdate पूर्वचयनित होगा, और इसलिए एक साल आप करेंगे चुनने स्वचालित प्रविष्टि को स्वचालित रूप से देखें, इस प्रकार को पहले की तारीख चुनने के लिए स्क्रॉल करने में सक्षम होना।
संपादित करें: 65 साल पहले एक शुरुआती बिंदु बनाने के लिए वर्ष रेंज को मनमाने ढंग से जोड़ा जाता है। अधिकतम टिप्पणी को इस टिप्पणी को लिखने से 12 साल पहले की तारीख के रूप में मनमाने ढंग से भी चुना जाता है। असल में यह मेनू किसी को 12 से 65 वर्ष के बीच उम्र चुनने की अनुमति देगा।
यह आदर्श नहीं है, लेकिन यह काफी अच्छी तरह से काम करता है।
अच्छा यह मेरे लिए ठीक काम करता है। –
मुझे लगता है कि बिना छेड़छाड़ किए प्लगइन को हैक करने का सबसे अच्छा तरीका साल के चयन आइटम पर इवेंट हैंडलर असाइन करना है।
//Hack for reverting year order
$(document.body).delegate('select.ui-datepicker-year', 'mousedown', function() {
(function(sel) {
var el = $(sel);
var ops = $(el).children().get();
if (ops.length > 0 && $(ops).first().val() < $(ops).last().val()) {
$(el).empty();
$(el).html(ops.reverse());
}
})(this);
});
यह कोड ठीक काम करना चाहिए! : पी
समीक्षा मेरे अपने जवाब। उम्मीद है की यह मदद करेगा :) !
jQuery datepicker year dropdown starts from 1900 and I want it to start from the bottom
यह कैसे मैं मेरी समस्या हल है।और मुझे लगता है कि ऐसा क्यों jQuery इस "बग" फिक्सिंग नहीं कर रहे हैं क्योंकि वहाँ एक "रास्ता" साल अंतिम तिथि से आरंभ करने के लिए है:
dateFormat: 'mm/dd/yy', changeMonth: true, changeYear: true, yearRange: "-70:", maxDate: "-13Y"
अपने मूल कोड यहां पोस्ट की तुलना में इसके बजाए
yearRange
का उपयोग निश्चित वर्षyearRange: "1900:-13"
के रूप में करते हुए का उपयोग करना बेहतर है:"-70:"
। औरmaxDate
सेट करें। तो अब मुझे 2004 से शुरू होने वाले वर्ष का चयन बॉक्स और 1 9 00 नहीं है।आशा है कि इससे दूसरों को वहां मदद मिलेगी।
पीएस: अन्य सभी समाधानों का परीक्षण किया गया है। वे बहुत धीमी हैं, और कुछ बहुत अच्छी तरह से काम नहीं करते हैं (विशेष रूप से पुराने - उदाहरण के लिए 2004 के बजाय वर्तमान वर्ष सेट करते हैं)।
यह स्वीकार्य उत्तर होना चाहिए। –
- 1. jQuery UI Datepicker सरणी
- 2. JQuery UI DatePicker
- 3. jQuery UI datepicker प्रदर्शन
- 4. jquery-ui datepicker
- 5. jQuery-UI Datepicker: draggable?
- 6. JQuery UI datepicker gotoCurrent
- 7. jQuery UI datepicker दिनांक
- 8. jQuery UI Datepicker और datejs
- 9. jQuery-UI datepicker डिफ़ॉल्ट दिनांक
- 10. jquery ui datepicker - एक ड्रैगगेबल दिनांक संस्करण
- 11. jQuery UI datepicker स्वचालित रूप से संवाद
- 12. jQuery UI DatePicker पर क्लिक कैसे करें?
- 13. jquery datepicker
- 14. Jquery datepicker बटन tabindex
- 15. jQuery UI Datepicker में minDate/maxDate सीमाएं हटाएं
- 16. JQuery UI DatePicker में गतिशील रूप से बदलें विकल्प
- 17. jQuery UI datepicker से दिनांक कैसे प्राप्त करें?
- 18. JQuery UI Datepicker - "संपन्न" बटन को कैसे हटाएं
- 19. jQuery UI datepicker से दिनांक कैसे प्राप्त करें
- 20. jQuery UI DatePicker केवल वर्ष दिखाने के लिए
- 21. jQuery datepicker
- 22. jQuery datepicker -
- 23. jquery datepicker
- 24. jquery datepicker onChangeMonthYear
- 25. सीएसएस स्कोप से jquery datepicker
- 26. jquery ui डेटपिकर दिनांक प्रारूप
- 27. jQuery UI स्वत: पूर्ण
- 28. JQuery - ड्रॉपडाउन
- 29. JQuery Datepicker सेट मूल्य
- 30. jquery datepicker - दिनांक अंतर
मैं वास्तव में वर्षों का चयन करने के लिए ड्रॉपडाउन पर खराब उपयोगिता से नफरत करता हूं और आम तौर पर उनसे बचने की सलाह देता हूं। यहां क्यों है: http://www.useit.com/alertbox/20001112.html। –
यह कैलेंडर पॉपअप के अंदर है, यह वास्तव में उपयोगकर्ता को तीन विकल्प देता है, या तो इसे स्वयं टाइप करें (जिसे उस आलेख में अनुशंसित किया गया है), इसे पॉपअप कैलेंडर से चुनें या वर्ष का चयन करने के लिए ड्रॉप डाउन का उपयोग करें। मुझे यकीन है कि एक उपयोगी समाधान है! – Lance
http://stackoverflow.com/questions/42650410/jquery-datepicker-year-dropdown-starts-from-1900-and-i-want-it-to-start-from-the/42666011#42666011 मेरे अपने उत्तर की समीक्षा करें । उम्मीद है की यह मदद करेगा :) ! –