2008-09-09 18 views
14

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

क्या इस व्यवहार को बदलने के लिए HTTP शीर्षलेख या समकक्ष में कोई तरीका है?

+0

ऐसा करने से पहले, क्योंकि आपकी धारणा में सावधान रहें कि हर कोई आपको फॉर्म साफ़ करना चाहता है, क्योंकि व्यक्तिगत रूप से, मुझे लगता है कि उस फॉर्म डेटा को पीछे/आगे के दौरान उपलब्ध है। ब्राउज़रों के लिए ऐसा करने में काफी समय लगा और मुझे गायब होने के लिए नफरत होगी! –

+0

चिंता न करें, मैं इसे सभी रूपों के लिए अक्षम नहीं कर रहा हूं, केवल कुछ मामलों जहां धारणा को समझ में नहीं आता है। –

उत्तर

30
<input autocomplete="off"> 
+1

क्या रेडियो बटन के लिए यह काम करता है? –

+1

यह रेडियो बटन – James

+0

के लिए काम करता है यह केवल HTML5 के लिए काम करता है – assaqqaf

2

आप फ़ॉर्म को साफ़ करने के लिए अपने एचटीएमएल दस्तावेज़ के बॉडी लोड इवेंट से फॉर्म ऑब्जेक्ट की रीसेट() विधि को कॉल कर सकते हैं।

एच 1। संदर्भ

0

मुझे आश्चर्य है, यदि आप पृष्ठ नहीं मेटा टैग के माध्यम से संचित किया जा करने के लिए सेट, इससे समस्या का समाधान होगा? http://lists.evolt.org/archive/Week-of-Mon-20030106/131984.html यदि ऐसा होता है, तो ब्राउज़र पर जावास्क्रिप्ट अक्षम के साथ काम करने का लाभ होगा।

<body onload="document.FormName.reset();"> 

आपके प्रपत्र के नाम के साथ चले बदलें और फिर सभी क्षेत्रों जब उपयोगकर्ता क्लिक करता है उसकी ब्राउज़र में ताज़ा रीसेट कर दिया जाएगा:

+0

वास्तव में, मुझे पृष्ठ के अन्य बिट्स के सभी प्रकार के लिए जावास्क्रिप्ट चाहिए। –

6

इस चाल करना चाहिए।

या यदि आप केवल कुछ क्षेत्रों रीसेट करना चाहते हैं, अपने पृष्ठ के नीचे से जोड़ें:

<script type="text/javascript"> 
    document.getElementById('field1').value =''; 
    document.getElementById('field2').value =''; 
    document.getElementById('field3').value =''; 
</script> 

क्षेत्रों के रिफ्रेश

0

सहित हर बार जब कोई उपयोगकर्ता पेज में प्रवेश करती है, पर रीसेट कर देगा कि फॉर्म पर डेटा w3c विनिर्देश का हिस्सा नहीं हैं। यह आपके जीवन को आसान बनाने के लिए एक ब्राउज़र सुविधा है। इसलिए, यदि आप पुनः लोड करने के बाद डेटा रखना नहीं चाहते हैं, तो आप इसे लोड करने के बाद सभी फॉर्म के मानों को शून्य पर सेट कर सकते हैं, क्योंकि एएसपीओ ने कहा। भले ही पृष्ठ कैश नहीं किया गया हो, फिर भी यह फ़ॉर्म पर डेटा प्रदर्शित करेगा, क्योंकि डेटा पृष्ठ के HTML कोड का हिस्सा नहीं है। आप यह भी कोशिश कर सकते हैं (पता नहीं है अगर यह काम करेंगे):

<input type="text" name="foo" value=""> 
3

स्वत: पूर्ण विशेषता "बंद" आदानों आप को ताजा किए जाने नहीं करना चाहते करने के लिए सेट करें। उदाहरण के लिए:

<input type="text" name="pin" autocomplete="off" /> 

the W3C reference

हालांकि संदर्भ में उल्लेख नहीं किया है, यह चेक बॉक्स के साथ भी काम करता है, कम से कम फ़ायरफ़ॉक्स पर देखते हैं।