2009-08-12 25 views
7

पर फॉर्म डेटा संशोधित करना मुझे सफारी & क्रोम (फ़ायरफ़ॉक्स और आईई में काम करता है) में यह अजीब समस्या मिल रही है।सफारी और क्रोम बैक बटन

  1. मैं इस चेकबॉक्स सूची जो पहला आइटम 'ए' की जाँच की, और आइटम 'बी' और है के साथ शुरू 'सी' अनियंत्रित
  2. मैं तो एक दूसरे पेज आइटम है कि में प्रदर्शित आदेश देती नेविगेट चेकबॉक्स सूची
  3. तो यह अब 'बी', 'ए', 'सी'
  4. चला जाता है मैं सूची में आइटम्स का क्रम बदल मैं वापस बटन
  5. पेज है प्रेस सर्वर से फिर से प्राप्त किए गए (मेरे पास कैशिंग अक्षम है), मैं सर्वर से भेजी गई प्रतिक्रिया की जांच करता हूं, और आइटम 'ए' अभी भी चेक किया गया है और अब सूची में पहला आइटम नहीं है।
  6. !!! अजीब व्यवहार !!! पृष्ठ को नए ऑर्डर 'बी', 'ए', 'सी' के साथ ब्राउज़र में लोड किया गया है, लेकिन 'ए' चेक नहीं किया गया है, इसके बजाय पहले आइटम 'बी' की जांच की गई है।

किसी भी तरह ऐसा लगता है कि चेक आइटम की स्थिति को बैक बटन दबाकर बहाल कर दिया गया है, और फॉर्म डेटा को सर्वर से भेजा गया है।

जब मैं पृष्ठ को रीफ्रेश करता हूं तो ऑर्डर 'बी', 'ए', 'सी' और आइटम 'ए' अब चेक किया जाता है, और सबकुछ ठीक दिखता है।

दोनों अवसरों पर पृष्ठ में पोस्टपोस्टबैक गलत पर सेट है।

क्या यह वेब किट में एक बग है?

कोशिश की, कैश साफ़ करना, निजी ब्राउज़िंग मोड में जाकर, इतिहास को साफ़ करना। अभी भी वही व्यवहार।

+0

इसे सी # अनुमान के रूप में टैग नहीं किया जाना चाहिए। – cburgmer

उत्तर

4

मुझे क्रोम के साथ एक ही समस्या मिली। आगे के परीक्षण पर, मैंने पाया कि यह केवल तब होता है जब वेबसाइट सत्र का उपयोग करती है। जब भी आप बैक बटन दबाते हैं, तो यह इसे दोबारा पोस्ट करने के बजाय किसी भी पोस्ट डेटा को हटा देता है।

मैंने इसे परीक्षण करने के लिए एक पृष्ठ बनाया: http://www.duanehutchins.com/formtest.php यदि आप कुछ जानकारी टाइप करते हैं और इसे कुछ बार पोस्ट करते हैं, तो यह काम करता है। फिर वापस दबाएं और पुनः लोड करें; कोई डेटा दोबारा पोस्ट नहीं किया जाता है।

यदि मैं सत्र अक्षम करता हूं, तो यह ठीक काम करता है। मैंने क्रोम को बग की सूचना दी। हम देखेंगे कि कोई मदद करता है या नहीं।

http://jsfiddle.net/eGutT/9/

यह रूप में अच्छी तरह से मेरे लिए क्या हो रहा है:

0

इस उदाहरण देखें। यह एक सुंदर मौलिक दोष की तरह प्रतीत होता है क्योंकि उपयोग-मामला इतना आसान है, और सबसे अधिक आम है। मैं पहले से ही विभिन्न परियोजनाओं में दो स्थानों पर इस मुद्दे में भाग चुका हूं। यदि सत्र को अक्षम करने से वास्तव में इस समस्या से बचा जाता है, तो यह वास्तविक फ़िक्स नहीं है, क्योंकि अधिकांश क्लाइंट इस विकल्प या देखभाल के बारे में भी नहीं जानते हैं।

4

वेबकिट द्वारा फ़ॉर्म डेटा को "बहाल" करने के साथ हमारे पास एक समान समस्या थी, भले ही पृष्ठ स्थिति औसत समय में बदल गई हो।

इसी तरह की पोस्ट Safari and Chrome back button changes hidden and submit values in forms ने एक अच्छा संकेत दिया जो हमारे लिए काम करता था। पृष्ठ पर सभी रूपों पर autocomplete="off" जोड़कर हम इसे हल कर सकते हैं।

+0

हे भगवान, आपने मेरी जिंदगी बचाई! मैं अपने सिर को दो दिनों तक टक्कर लगी हूं जब तक कि मुझे यह स्वत: समाधान नहीं मिला! मेरे पास पृष्ठ पर कुछ खोज फ़ॉर्म था जो सफारी और Google क्रोम में बैक बटन क्लिक पर गाली फॉर्म डेटा लौट रहा था। आश्चर्यजनक रूप से आईई ने बैक बटन क्लिक पर पूरी तरह से अच्छा काम किया। तो इसके लिए फिर से धन्यवाद। – Bounce

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