मेरे पास एक विरासत वेब ऐप है जो बूटस्ट्रैप डेटपिकर के कुछ पुराने संस्करण का उपयोग कर रहा है। मैंने पूरी datepicker.js फ़ाइल यहाँ अपलोड कर दी है। https://pastebin.com/aYzMrWgW

मैं अपना प्रारंभ दिनांक पिकर सेट करने का प्रयास कर रहा हूं ताकि जब यह बदल जाए, तो मुझे चयनित मान मिल जाए और चुने गए उसी महीने के अंतिम दिन की गणना करें, और उस मान को समाप्ति तिथि के मान के रूप में सेट करें।

मैं प्रारंभ दिनांक पिकर $('#dp1') से मान प्राप्त करने के लिए नीचे दिए गए कोड का उपयोग कर रहा हूं और इसे समाप्ति तिथि पिकर $('#dp1a') के मान पर सेट करने का प्रयास कर रहा हूं। जब मैं कंसोल की जांच करता हूं, तो मेरा lastDay वैरिएबल सही होता है। अगर मैं 8/1/2017 चुनता हूं - यह 8/31/2017 के स्ट्रिंग प्रतिनिधित्व और बेटे को लॉग आउट करता है। हालांकि मैं इसे अंतिम तिथि को सही मान के साथ अपडेट करने के लिए नहीं प्राप्त कर सकता।

$('#dp1').datepicker().on('changeDate', function(ev) {
  $('.datePickerStart').change();
});

$('.datePickerStart').change(function() {
  // Parse the date and get the last day of the month selected
  var date = new Date($(this).val());
  var lastDay = new Date(date.getFullYear(), date.getMonth() + 2, 0);
  console.log(lastDay);


  $('#dp1a').datepicker('setValue', lastDay);
});

अगर मैं ऊपर के रूप में सेटवैल्यू को कॉल करता हूं, तो यह मान को इसके बजाय 9/1/2017 पर सेट करता है।

क्या कोई बता सकता है कि मैं क्या गलत कर रहा हूँ?

1
Phil 1 सितंबर 2017, 21:37
कैसा रहेगा $('#dp1a').datepicker('setValue', lastDay.split('/').reverse().join('-'));
 – 
Hackerman
1 सितंबर 2017, 21:51
.split कंसोल में फ़ंक्शन त्रुटि नहीं है। lastDay एक दिनांक वस्तु है।
 – 
Phil
1 सितंबर 2017, 21:56

1 उत्तर

सबसे बढ़िया उत्तर

आपका बूटस्ट्रैप डेटपिकर संस्करण बहुत पुराना है और ऐसा लगता है कि इसमें पूरी विधि नहीं है .datepicker('setValue', value)। वर्तमान संस्करण की तुलना में कोड की कुछ पंक्ति गायब हैं। आप अंतर की जांच कर सकते हैं यहां। भले ही मैंने आपके संस्करण का उपयोग करके सेटवैल्यू में आपके कोड में कुछ बदलाव किए हैं।

$(document).ready(function(){
var second = $('#dp1a').datepicker().data('datepicker');
$('#dp1').datepicker().on('changeDate', function(ev) {
  $('.datePickerStart').change();
});

$('.datePickerStart').change(function() {
  // Parse the date and get the last day of the month selected
  var date = new Date($(this).val());
  var lastDay = new Date(date.getFullYear(), date.getMonth() + 2, 0);
  console.log(lastDay);
  second.date=lastDay;
    second.setValue();
});
});

पुराना संस्करण बेला

लेकिन वर्तमान संस्करण के साथ अद्यतन होने पर आपका कोड सही काम करता है। इन विधियों का आसानी से लाभ उठाने के लिए नवीनतम संस्करणों के साथ काम करना हमेशा बेहतर होता है।

वर्तमान संस्करण बेला

उम्मीद है ये मदद करेगा!

1
Amal 2 सितंबर 2017, 08:33