2011-06-03 12 views
5

एक इनपुट टेक्स्ट फ़ील्ड के अंदर एक दिनांक मान को पॉप्युलेट करने और बनाने की कोशिश कर रहा है। मुझसे यहां क्या गलत हो रहा है?
जेएसटीएल प्रारूप टैग

<spring:bind path="salesData.weekEndDate"> 
<input type="text" name="${status.expression}" 
value="${fmt:formateDate pattern='MM/mm/YYYY' status.value}" 
/> 

उत्तर

13

JSTL fmt taglib<fmt:xxx> टैग, नहीं ${fmt:xxx} कार्यों के मौजूद है।

इसे ठीक करें तदनुसार:

<input type="text" name="${status.expression}" 
    value="<fmt:formatDate pattern="MM/dd/yyyy" value="${status.value}" />" /> 
/> 

(ध्यान दें कि दिन dd, नहीं mm के रूप में प्रतिनिधित्व किया जा रहे हैं और साल के yyyy, नहीं YYYY के रूप में प्रतिनिधित्व करने के लिए, सभी वैध पैटर्न के लिए यह भी देखना SimpleDateFormat javadoc हैं कि)

नेस्टेड टैग के बारे में अपने आईडीई झटके (जो बिल्कुल ठीक तथापि चलाना चाहिए) या आप इसे से खुजली हो, var विशेषता का उपयोग करते हैं ताकि अपने HTML/एक्सएमएल समाप्त होता है बनाने के अच्छी तरह से गठित

<fmt:formatDate pattern="MM/dd/yyyy" value="${status.value}" var="statusDate" /> 
<input type="text" name="${status.expression}" value="${statusDate}" /> 

तुम सच में एक ${fmt:formatDate()} समारोह लेना पसंद हैं, तो आप यह अपने आप homegrow होगा। आप this answer में किकऑफ उदाहरण पा सकते हैं।


अद्यतन के रूप में टिप्पणी प्रति पता चला है, ${status.value} वास्तव में प्रारूप yyyy-MM-dd में एक String है। यदि इसे पूर्णतया Date एक फिक्सवॉर्फ़ करने का विकल्प नहीं है, तो पर इसे खिलाने से पहले <fmt:parseDate> की सहायता से आपको इसे Date में पहले पार्स करना होगा।

<fmt:parseDate pattern="yyyy-MM-dd" value="${status.value}" var="parsedStatusDate" /> 
<fmt:formatDate pattern="MM/dd/yyyy" value="${parsedStatusDate}" var="formattedStatusDate" /> 
<input type="text" name="${status.expression}" value="${formattedStatusDate}" /> 
+0

हाय BalusC, यह फ्लॉप काम value = "" – t0mcat

+0

क्या बजाय क्या होता है? क्या आपने जेएसपी के शीर्ष पर टैगलिब घोषित किया है? क्या आपने 'YYYY' को 'yyyy'' करने के लिए ठीक किया था? ध्यान दें कि मैंने एक विकल्प के साथ जवाब अपडेट किया है। – BalusC

+0

एफएमटी टैगलिब गायब था। इसे ठीक किया और चलने की कोशिश की। मुझे यही मिला: स्टेटस कोड 500 अपवाद प्रकार वर्ग javax.servlet.jsp.el.ELException संदेश "java.util.Date" टाइप करने के लिए स्ट्रिंग "2002-04-15" को कन्वर्ट करने का प्रयास है, लेकिन कोई PropertyEditor नहीं है उस प्रकार के लिए अपवाद javax.servlet.jsp.el.ELException: "java.util.Date" टाइप करने के लिए स्ट्रिंग "2002-04-15" को कन्वर्ट करने का प्रयास करें, लेकिन उस प्रकार के लिए कोई प्रॉपर्टी एडिटर नहीं है – t0mcat

संबंधित मुद्दे