2012-04-02 14 views
8

मेरे पास एक सामान्य त्रुटि पृष्ठ है, कि कोई भी प्रबंधित त्रुटि रीडायरेक्ट हो जाएगी। मेरे पास एक व्यवस्थापक पृष्ठ है कि जब उपयोगकर्ता कोई त्रुटि का आह्वान करता है, और उपयोगकर्ता को त्रुटि पृष्ठ पर लाया जाता है, तो त्रुटि पृष्ठ से बैक बटन मारकर व्यवस्थापक पृष्ठ को अनुचित रूप से लोड करने का कारण बनता है।जब उपयोगकर्ता बैक बटन से आता है तो पृष्ठ को फिर से लोड करना

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

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

मैं भी है कि मैं देखा है कि एक मेज 2 कोशिकाओं मैं हाल ही में जोड़ा याद आ रही है उल्लेख करना चाहिए। यह मुझे विश्वास दिलाता है कि पृष्ठ की पुरानी स्थिति कहीं भी कैश की जा रही है, हालांकि ब्राउज़र कैश को साफ़ करना और मेरे सर्वर को पुनरारंभ करना बिल्कुल मदद नहीं करता है।

EDIT2:

इसके अलावा, window.onload() की स्थापना nuked हो जाता है जब मैं वापस व्यवस्थापक पृष्ठ के लिए आते हैं

+0

आप यहां अपना उत्तर मिल जाएगा http://stackoverflow.com/questions/158319/cross-browser-onload-event-and-the-back-button –

+0

संभव डुप्लिकेट: http://stackoverflow.com/ प्रश्न/15831 9/क्रॉस-ब्राउज़र-ऑनलोड-ईवेंट-एंड-द-बैक-बटन –

उत्तर

0

तो यह पता चला है यह सिर्फ एक IE9 मुद्दा है। मेरी अधिभार विधि को कभी भी बुलाया नहीं जा रहा था। अन्य ब्राउज़रों में ठीक काम करता है।

मुझे यह तय करने के लिए आईई 9 में काम करने के लिए यह तय करना था, साथ ही पेज पर एक क्वेरी स्ट्रिंग जोड़ना था, ताकि जब मैं पेज पर वापस आऊंगा, IE9 ब्राउज़र पर वापस जायेगा स्ट्रिंग बदल गई है या फिर से मूल्यांकन किया जाना चाहिए।

आप दोनों लोगों के लिए धन्यवाद, या मुझे इस मुद्दे को खोजने में मदद मिली।

2

आप इस कोड के साथ OnInit अधिभावी द्वारा इस बात का ध्यान रखना सक्षम होना चाहिए:

public class ProductBrowser : Page 
{ 
    protected override void OnInit(EventArgs e) 
    { 
     Response.Cache.SetCacheability(HttpCacheability.NoCache); 
     Response.Cache.SetNoStore(); 
     Response.Cache.SetExpires(DateTime.MinValue); 

     //EDIT: Set the value to FALSE 
     Response.Cache.SetAllowResponseInBrowserHistory(false); 

     base.OnInit(e); 
    } 
} 

अधिक जानकारी के लिए इस सवाल का देखें: Back button refresh page

संपादित

कैश को साफ़ करने के लिए, यह बाहर की जाँच:
Manually clear ASP.NET server cache for a single application/web site?

+0

मैंने ऐसा करने का प्रयास किया है, लेकिन कुछ भी नहीं। यह मुझे बात करता है कि मेरे पृष्ठ की पुरानी स्थिति कहीं भी कैश की जा रही है, लेकिन ब्राउज़र में कैश साफ़ करना और मेरे सर्वर को पुनरारंभ करना कुछ भी नहीं है। – Keerigan

+0

मैंने आपके लिए प्रयास करने के लिए 'ऑनइनिट' के लिए एक अतिरिक्त पंक्ति जोड़ा। मैंने एक जावास्क्रिप्ट समाधान भी जोड़ा, लेकिन यह एक हैक की तरह है। –

+0

कि नई लाइन अभी भी मदद नहीं करती है। और बस खिड़की कर रहा है। लोड लोड प्रारंभिक लोड को लूप में रखता है – Keerigan

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