2010-08-07 20 views
5

मेरे पास एक ऐसा फॉर्म है जहां पहले फ़ील्ड को छोड़कर लोड पर सबकुछ अक्षम होना चाहिए।
पहला फ़ील्ड एक स्वतः पूर्ण इनपुट है। जब वे इससे कुछ चुनते हैं, तो यह अक्षम हो जाता है, और उसके बाद दूसरा फ़ील्ड सक्षम होने के लिए सेट करता है। दूसरा क्षेत्र एक ड्रॉपडाउन है।एचटीएमएल फॉर्म रीसेट को कैसे रोकें

समस्या यह है कि उपयोगकर्ता के फॉर्म का उपयोग करने के बाद और बैक बटन पर क्लिक करने के बाद समस्या होती है, यह उस स्थिति के समान होता है जो सबमिट करने से पहले था - 1- स्वत: पूर्ण अक्षम है (लेकिन इसके लिए कोई मूल्य नहीं है कुछ कारण) 2- ड्रॉपडाउन सक्षम है, और

के साथ सबमिट किए गए मान पर सेट करें मैंने जावास्क्रिप्ट (jquery's .ready()) का उपयोग करके फ़ॉर्म की बहाली को बल देने की कोशिश की है, लेकिन .ready() बैक बटन के साथ वापस जाने के बाद दौड़ नहीं आता ..

वापस जाने के बाद पृष्ठ को रीफ्रेश करना इसे पुनर्स्थापित करता है। कोई विचार की हम इसे कैसे ठीक कर सकते हैं?

+1

मैंने खुद को इस समस्या को मारा है, और हमेशा एक बेहतर डिजाइन मिला है। क्या आपने एक नया स्वरूप माना है? – strager

उत्तर

1

समस्या यह है कि ब्राउज़र बैक बटन को संभालने में असंगत हैं। फ़ायरफ़ॉक्स, उदाहरण के लिए, एचटीएमएल (बाद में जावास्क्रिप्ट प्रोसेसिंग) की स्थिति को कैश करता है और बैक बटन मारने के बाद उस स्थिति में लौटता है, लेकिन कुछ अन्य नहीं करते हैं।

सबमिट करने के बाद आपके लिए सबसे अच्छी बात यह है कि आपको उस यूआरएल पर रीडायरेक्ट करना चाहिए जिसमें सबमिट किए गए डेटा का प्रतिनिधित्व करने वाले एचटीएमएल में उन सबमिट किए गए विवरणों को संपादित करने की क्षमता है। इससे आपके उपयोगकर्ताओं को बैक बटन हिट करना चाहते हैं।

संपादित करें:

आप भी अपने पृष्ठ में जोड़ना चाहिए:

<meta http-equiv="cache-control" content="no-cache, no-store, must-revalidate"> 

पेज के राज्य के परिवर्तन को संचित करने से ब्राउज़र को रोकने के लिए माना जाता है यही कारण है कि। मुझे लगता है कि आप इसे पसंद करेंगे ताकि जब उपयोगकर्ता बैक बटन हिट करता है तो वे पृष्ठ की शुरुआत स्थिति से शुरू होते हैं।

+0

यह एक अच्छा विचार है। मैं इसे एक उत्तर के रूप में लेने जा रहा हूं, लेकिन जिज्ञासा से, क्या इस समस्या का कोई समाधान है? मुझे लगता है कि कुछ सर्वर साइड ट्रिक्स के साथ यह संभव हो सकता है (उदाहरण के लिए जब वे वापस जाते हैं तो पृष्ठ से PHP को रीफ्रेश करना) – babonk

+0

"लेकिन अन्य नहीं।" - मेरा सुझाव है कि आप इसे बदल दें "लेकिन कुछ अन्य नहीं।" ओपेरा फ़ायरफ़ॉक्स के समान कुछ करता है (हालांकि मुझे यह पसंद है कि ओपेरा बेहतर कैसे करता है), और ऐसे अन्य ब्राउज़र भी हो सकते हैं जो राज्य को भी रखते हैं (elinks दिमाग में आता है)। – strager

+0

अच्छी स्पष्टीकरण, strager। – Jacob

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