2010-07-04 21 views
9

यह एक बहुत ही सरल सवाल है (मुझे लगता है)। शायद एक repost, लेकिन मैं यहाँ जवाब नहीं मिला ... तो हम यहाँ जाओ।पेज रीफ्रेश पर चेकबॉक्स रहता है

मेरे पास एक पृष्ठ पर एक चेकबॉक्स है जिसे मैं "अनचेक" करने के लिए डिफ़ॉल्ट करना चाहता हूं (जब तक कि मैं अपने PHP में अन्यथा निर्दिष्ट नहीं करता)।

जब मैं पृष्ठ को रीफ्रेश करता हूं, यदि बॉक्स चेक किया गया था, तो यह चेक-इन किया जाएगा, जो बॉक्स को चेक करने वाले बॉक्स के साथ मेरे पृष्ठ पर एक डोम तत्व जोड़ता है। तो समस्या यह है कि अगर मैं रीफ्रेश करता हूं, तो बॉक्स अभी भी चेक किया गया है, लेकिन डोम तत्व मौजूद नहीं है (क्योंकि मैंने फ़ंक्शन को नहीं निकाल दिया है और मैं तब तक नहीं चाहता जब तक कि उपयोगकर्ता चेक बॉक्स को चेक न करे) लेकिन बॉक्स है ALREADY चेक किया गया और मैं विपरीत भूमि में समाप्त हुआ जहां संयुक्त राष्ट्र बॉक्स को चेक करने से मेरा डोम तत्व बनाता है और इसे जांचने से इसे हटा दिया जाता है।

असल में, सवाल यह है कि ...

वहाँ जावास्क्रिप्ट के बिना अनियंत्रित करने के लिए चेकबॉक्स डिफ़ॉल्ट के लिए एक रास्ता है?

BTW मैं किसी भी एफएफ 3.5.10 ज़रूर से

+1

यहाँ पीछे की ओर काम कर रहे ... आप कैसे मिलता है? मेरा फॉर्म साफ़ करता है, और मैं वास्तव में इसे डेटा रखना चाहता हूं। मेरे पास एक मुद्दा है जहां एक गलत टाइप कैप्चा मेरे फॉर्म को साफ़ करता है, और मुझे यकीन नहीं है कि इसे कैसे हल किया जाए। – creativeedg10

उत्तर

9

देखें http://weblogs.mozillazine.org/gerv/archives/2006/10/firefox_reload_behaviour.html (पहली टिप्पणी):

यह इसलिए यदि आप ताज़ा करें बटन नल आप नहीं उद्देश्य पर कि जिस तरह से किया है अपना काम खोना बगजिला में कहीं भी एक प्रविष्टि है कि WONTFIXed को नियमित रूप से फ़ॉर्म को रीसेट करने के लिए नियमित रीफ्रेश करने के लिए कहा गया है। असल में यह पिछड़ा-संगतता की बात है - एनएस 1.0 (शायद यहां तक ​​कि मोज़ेक) के बाद से प्रत्येक ब्राउज़र ने ऐसा किया है।

गतिशील रूप से जेनरेट किए गए पृष्ठ स्वयं को रीसेट भी नहीं करते हैं, भले ही समाप्ति 0 पर सेट हो और आप बैक बटन दबाएंगे तो यह आपको ताज़ा रूप देगा। साथ ही, यदि फॉर्म स्वयं बदलता है (तत्व जोड़ें या हटाएं, कार्रवाई को बदलें, आदि) के लिए एक रीलोड पर रीसेट हो जाएगा। मैं यह नहीं परीक्षण किया है, लेकिन कुछ यादृच्छिक करने के लिए प्रपत्र नाम की स्थापना (यदि आप यह सोचते हैं जे एस पहुँच के लिए नाम की जरूरत नहीं है) बस काम हो सकता है। पीएचपी में "> की तरह।

जैसा कि आपने कहा, मजबूर कर एक ताज़ा प्रपत्र को साफ करता है, और यह भी रीसेट करने करता है। क्या कुछ ऐसा करना चाहते हैं जो आप चाहते हैं (फिर से, परीक्षण नहीं किया गया)? चेकबॉक्स एक ताज़ा के बाद जाँच रहने के लिए

+0

ठीक है, तो आप वहां जाते हैं। अरे तुम एफएफ!(बस मजाक कर रहा हूँ, मुझे एफएफ पसंद है, मैं चाहता हूं कि सभी लोग एफएफ का इस्तेमाल करें) –

+1

हाँ, वेब डेवलपर्स के लिए परेशान करना दुर्भाग्यवश, वेब उपयोगकर्ताओं के लिए वांछित व्यवहार है। कई बार ऐसा हुआ है जब मैंने एक लंबी पोस्ट लिखते समय गलती से एक पृष्ठ पुनः लोड किया था और आभारी था कि फ़ायरफ़ॉक्स ने अपना फॉर्म डेटा रखा था। –

3

अन्य ब्राउज़रों चेक इन नहीं किया (कोई यमक इरादा):

document.getElementById('my_checkbox').checked = false; 

ओह, मुझे कोई जे एस के बारे में हिस्सा याद किया। जहां तक ​​मुझे पता है, फ़ायरफ़ॉक्स रीफ्रेश पर पृष्ठ स्थिति को बरकरार रखता है, इसलिए मुझे लगता है कि कोई दूसरा रास्ता नहीं है।

+0

हाँ, मैं तो बस अधिक जावास्क्रिप्ट मेरा पेज को जोड़ने से नफरत है, के रूप में मैं कुछ कुछ बक्से की जाँच करने के जोड़ेंगे। मुझे लगता है कि मैं एक बार में सभी का ख्याल रख सकता हूं, लेकिन मैं सिर्फ एक साफ स्लेट के साथ शुरू करना चाहता हूं। –

6

इस यानी स्वत: पूर्ण के लिए काम करता = "बंद"

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