javascript javatpoint जावास्क्रिप्ट रीलोड पेज



javascript programs (4)

मेरे द्वारा उपयोग किए जा रहे हर चीज़ को पूरी तरह से पुनः लोड किए बिना पृष्ठ को पुनः लोड करने के लिए

window.top.location=window.top.location;

हालाँकि, यह किसी कारण से काम नहीं करता है जब लंगर पाठ होता है। यह इस मामले में कुछ भी नहीं करता प्रतीत होता है, लेकिन अधिक संभावना है कि यह लंगर को ताज़ा करता है।

इसके लिए कोई फ़िक्स जो कैश्ड छवियों और लिपियों को पुनः लोड किए बिना पृष्ठ (ऊपर के रूप में) को पुनः लोड करेगा?


Answer #1

Location.reload location.reload(false) का उपयोग करके देखें।

जैसा कि एमडीएन कहता है , दूसरा पैरामीटर एक बूलियन है जो दर्शाता है कि कैश को बायपास करना है या नहीं। false कैश का उपयोग करता रहता है, जैसा आप चाहते थे।


Answer #2

मैं निम्नलिखित स्थिति के लिए इन सभी की कोशिश कर रहा हूं: मेरे पास एक जटिल पृष्ठ है जिसमें एक मिनीकार्ट है जहां ग्राहक उत्पादों की सूची के साथ परियोजनाओं को बचा सकता है। अब मैं ग्राहक को एक नया पेज खोलने की अनुमति देना चाहता था, जबकि वह रिपोर्ट को डाउनलोड करने के लिए एक नया पेज डाउनलोड कर सकता है।

IE8 के साथ अभी भी XP चलाने वाले ग्राहकों के पास रिपोर्ट पृष्ठ खोलने के बाद मूल पृष्ठ होगा। प्रोग्रामिंग ASP.NET में VB कोड के साथ था। इस समाधान ने मेरे लिए काम किया।

Dim proj As String = "<script language=javascript> location.assign('/Projects.aspx');
window.open('Report.aspx?project=" & projid.Text & "&rpt=bill');</script>"
Session.Add("AddCart", idx.ToString("N0"))
Response.Write(proj)

location.assign का उपयोग पैरेंट पेज को रिफ्रेश करने के लिए किया जाता है जबकि window.open रिपोर्ट को एक नई विंडो में खोलेगा।

एक सत्र चर का उपयोग ट्रैक रखने के लिए किया जाता है, जिसमें समझौते की पंक्ति को खोला जाना चाहिए। यह Page_Load में संभाला जाता है

    If Not Page.IsPostBack Then
        LoadProjects()
        If Session("AddCart") IsNot Nothing Then
            Dim idx As Integer = Session("AddCart")
            ProjAccordion.SelectedIndex = idx
            Session.Remove("AddCart")
        ElseIf Session("CopyProj") IsNot Nothing Then
            Dim idx As Integer = Session("CopyProj")
            ProjAccordion.SelectedIndex = idx
            Session.Remove("CopyProj")
        End If
    End If

Answer #3

यह सुनिश्चित करने का सबसे अच्छा तरीका है कि पृष्ठ को स्वयं पुनः लोड किया जाए, लेकिन अन्य कैश्ड तत्व स्थान को बदलने के लिए नहीं हैं। एक यादृच्छिक पैरामीटर के साथ क्वेरी स्ट्रिंग खोजें।

उदाहरण के लिए,

location.search='?'+Math.random();

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

यदि आपका पृष्ठ स्वयं एक एप्लिकेशन है जो क्वेरी स्ट्रिंग (जैसे file.cgi; param = xyz & param2 = abc ...) का उपयोग करता है, तो आपको इसे पूरी तरह से बदलने के बजाय क्वेरी स्ट्रिंग में संलग्न करना होगा:

if (location.search.length > 1)
location.search+='&'+Math.random();
else
location.search='?'+Math.random();





javascript