Tuesday, 15 March 2011

javascript - Setting value to datetime-local HTML input -


मेरे पास type = "datetime-local" का एक HTML इनपुट ऑब्जेक्ट है जिसके लिए मैं चाहूंगा एक कस्टम मान सेट करने के लिए जो अब () + 3 घंटे हर बार इसका मान बदल जाता है

इस तथ्य पर आधारित है कि सतर्क (object.value) एक स्ट्रिंग प्रकार YYYY-MM-DDTHH: MM देता है, मैंने सोचा है कि मैं स्ट्रिंग को ठीक से स्वरूपित करने के लिए भी (तिथि की गणना के लिए) की आवश्यकता होगी इसलिए मेरे पास है:

एचटीएमएल

  & lt; इनपुट  

घंटे जोड़ने के लिए जेएस दिनांक प्रोटोटाइप विस्तारित किया गया

  दिनांक.प्रोतिटिप .addhours = function (h) {this.setTime (this.getTime () + (एच * 60 * 60 * 1000)); इस वापसी; }  

तिथियों को बनाया गया प्रतिक्रियाएं () फ़ंक्शन निम्नानुसार है

  फ़ंक्शन तिथिसक्रिया () {var adesso = new date; Document.getElementById ('निष्पादन दिनांक')। Value = parseDateToInput (adesso.addHours (3)); }  

जहां स्ट्रिंग को पार्स करने के लिए निम्नलिखित सरल फ़ंक्शन द्वारा किया जाता है:

  फ़ंक्शन parseDateToInput (jsDate) {var jsDay = jsDate.getDate (); अगर (जेएसडीए & lt; 10) {जेएसडीए = '0' + जेएसडीए;} var जेएसएमोनथ = जेएसडीट.गेटमॉनथ (); अगर (jsMonth & lt; 10) {jsMonth = '0' + jsMonth;} var jsYear = jsDate.getFullYear (); अगर (जेएसइयर और एलटी; 10) {जेएसवाईअर = '0' + जेएसइयर;} var जेएसहोअर = जेएसडीट.गेटहोर्स (); यदि (jsHour & lt; 10) {jsHour = '0' + jsHour;} var jsMinute = jsDate.getMinutes (); यदि (jsMinute & lt; 10) {jsMinute = '0' + jsMinute;} जेएसइयर + '-' + + जेएसएमोनथ + '-' + जेएसडीए + 'टी' + जेएसएचउर + ':' + जेएसएमिन्यूट; }  

हालांकि, हालांकि कोड के एकल टुकड़े स्वयं काम करते हैं, उपरोक्त कुछ भी नहीं है जब मैं अपने इनपुट के मूल्य को बदलता हूं क्या कोई मुझे समझने में सहायता करता है कि मैं क्या गलत करता हूं? मैंने शुरुआती डीबगिंग की मदद करने के लिए निम्नलिखित को तैयार किया है :) अग्रिम धन्यवाद।


No comments:

Post a Comment