एक परियोजना में मैं पर काम कर रहा हूँ, मैं के बजाय NaN
लौटने एक तारीख एक <input type="date">
सफारी जेएस YYYY-MM-DD दिनांक प्रारूप को पार्स नहीं कर सकता है?
YYYY-MM-DD
की तारीखों को पार्स करने में विफल रहता है के साथ
में प्रवेश को मान्य करने की जरूरत है, अपेक्षित युग टाइमस्टैंप।
मैं निम्नलिखित तकनीक का उपयोग कर रहा क्षेत्र के ठीक पहले फ़ॉर्म सबमिट किया जाता मान्य करने के लिए: (
//value = '2010-06-21'
var stamp = Date.parse(value);
if (isNaN(stamp)) {
//notify user
} else {
value = new Date(stamp).format_mysql();
}
कहाँ format_mysql()
एक प्रोटोटाइप समारोह उस तारीख (सही) MySQL दिनांक समय प्रारूप में प्रारूप है YYYY- MM-DD)।
s '/
साथ s' -
की जगह (YYYY/MM/DD) पैदावार एक "सही" टाइमस्टैम्प।
मैं नोट करना चाहिए कि क्षेत्र में किसी भी दिनांक स्वरूप ही नहीं, YYYY-MM-DD को स्वीकार करना चाहिए, और हालांकि मैं, मैं Date.js तरह पुस्तकालयों का उपयोग नहीं कर सकते हैं चाहते हैं
कैसे मैं इसे ठीक कर सकते हैं कि , या किसी तारीख को पार्स/मान्य करने का कोई बेहतर तरीका है?
मेरे पास सफारी 5.17 है, और यह मेरे लिए ठीक काम करता है (आईओएस 5.12 पर भी परीक्षण किया गया): कब = Date.parse ("2013-01-29 08:30"); – Orwellophile
'दिनांक()' कन्स्ट्रक्टर द्वारा स्वीकार किए गए तार ब्राउज़र में भिन्न होते हैं, लेकिन सबसे सुरक्षित व्यक्ति YYYY/MM/DD लगता है - http://dygraphs.com/date-formats.html देखें। – Noyo