जावास्क्रिप्ट का उपयोग करके किसी पृष्ठ को कैसे पुनः लोड करें


871

मैं जावास्क्रिप्ट का उपयोग करके पृष्ठ को कैसे पुनः लोड कर सकता हूं?

मुझे एक ऐसी विधि की आवश्यकता है जो सभी ब्राउज़रों में काम करे।

जवाबों:


946

जावास्क्रिप्ट 1.0

window.location.href = window.location.pathname + window.location.search + window.location.hash;
// creates a history entry

जावास्क्रिप्ट 1.1

window.location.replace(window.location.pathname + window.location.search + window.location.hash);
// does not create a history entry

जावास्क्रिप्ट 1.2

window.location.reload(false); 
// If we needed to pull the document from
//  the web-server again (such as where the document contents
//  change dynamically) we would pass the argument as 'true'.

80
'true' पृष्ठ को सर्वर से पुनः लोड करने के लिए बाध्य करेगा। यदि उपलब्ध हो, तो 'झूठा' कैश से पुनः लोड होगा।
बैरो32

3
क्या .reload(true)इतिहास में जुड़ जाता है? यदि हां, तो पुनः लोड से कैसे बचें?
जॉन्थप्रन्योर

12
यहाँ डॉक्स के लिए एक लिंक दिया गया है: developer.mozilla.org/en-US/docs/Web/API/window.location
जस्टिन एथियर

1
यह सबसे अच्छा जवाब है और शीर्ष पर होना चाहिए। अन्य कार्यों के साथ मेरा मुद्दा यह है कि वे पृष्ठ को सर्वर से सामग्री के साथ ताज़ा नहीं कर रहे थे और इसके बजाय कैश का उपयोग कर रहे थे इसलिए जावास्क्रिप्ट 1.2 समाधान मेरे लिए सबसे अच्छा और एकमात्र समाधान था।
रयान कूलवेब्स

8
.reload (सही) या .reload (झूठा) मेरे IDE और github.com/Microsoft/TypeScript/issues/28898 के अनुसार निकाला गया है - अब .reload ()
danday742

387
location.reload();

अधिक जानकारी के लिए यह एमडीएन पृष्ठ देखें।

यदि आप एक के बाद ताज़ा कर रहे हैं, onclickतो आपको सीधे बाद में वापस लौटना होगा

location.reload();
return false;

22
क्या बीच का अंतर है location.reload()और window.location.reload()?
Raptor

53
@ShivanRaptor आमतौर पर कोई भी, वेब ब्राउज़र संदर्भ में, locationरूप में ही है window.locationके रूप में windowवैश्विक वस्तु है।
लेकेनस्टाइन

1
return false;अगर एक लिंक में एक onclick से यह कॉल करने के लिए मत भूलना ।
रिमीयन

2
मैं window.location.reload();पठनीयता के लिए उपयोग करना पसंद करता हूं , जैसा locationकि एक स्थानीय चर हो सकता है - जबकि आप आमतौर पर नाम के चर से बचेंगे window
यति

217

जावास्क्रिप्ट का उपयोग करके पृष्ठ को पुनः लोड करने के लिए 535 तरीके हैं , सबसे आसान है location = location

ये पहले 50 हैं:

location = location
location = location.href
location = window.location
location = self.location
location = window.location.href
location = self.location.href
location = location['href']
location = window['location']
location = window['location'].href
location = window['location']['href']
location = window.location['href']
location = self['location']
location = self['location'].href
location = self['location']['href']
location = self.location['href']
location.assign(location)
location.replace(location)
window.location.assign(location)
window.location.replace(location)
self.location.assign(location)
self.location.replace(location)
location['assign'](location)
location['replace'](location)
window.location['assign'](location)
window.location['replace'](location)
window['location'].assign(location)
window['location'].replace(location)
window['location']['assign'](location)
window['location']['replace'](location)
self.location['assign'](location)
self.location['replace'](location)
self['location'].assign(location)
self['location'].replace(location)
self['location']['assign'](location)
self['location']['replace'](location)
location.href = location
location.href = location.href
location.href = window.location
location.href = self.location
location.href = window.location.href
location.href = self.location.href
location.href = location['href']
location.href = window['location']
location.href = window['location'].href
location.href = window['location']['href']
location.href = window.location['href']
location.href = self['location']
location.href = self['location'].href
location.href = self['location']['href']
location.href = self.location['href']
...

84
यह दिलचस्प है, लेकिन अब मैं उलझन में हूँ
अरुण प्रसाद ES

14
यह जावास्क्रिप्ट की ख़ासियत को भी रेखांकित करता है :)
जेरेमी थिल

51
मैं व्यक्तिगत रूप से इस जवाब को नापसंद करता हूं क्योंकि यह सिर्फ स्थान बदलने के लिए अलग-अलग कार्यान्वयन का एक हाथ दिखाता है। ये तरीके किसी फ़ंक्शन को निष्पादित करने या जावास्क्रिप्ट में किसी विशेषता तक पहुंचने के विभिन्न तरीकों के क्रमपरिवर्तन हैं। पृष्ठ पुनः लोड करने के विभिन्न तरीके नहीं हैं।
यहोशू ने 15

40
यकीन है कि वहाँ और भी कर रहे हैं, जैसे:window.window.window['window'].location = window['window'].window['window']['window']['window']['window']['window']['window']['location']
Renato

84

आप इस कार्य का उपयोग कर सकते हैं window.location.reload();। चूंकि ऐसा करने के कई तरीके हैं, लेकिन मुझे लगता है कि यह उसी दस्तावेज़ को जावास्क्रिप्ट के साथ फिर से लोड करने का उपयुक्त तरीका है। यहाँ स्पष्टीकरण है

जावास्क्रिप्ट window.locationऑब्जेक्ट का उपयोग किया जा सकता है

  • वर्तमान पृष्ठ पता प्राप्त करने के लिए (URL)
  • ब्राउज़र को दूसरे पृष्ठ पर पुनर्निर्देशित करना
  • उसी पृष्ठ को पुनः लोड करने के लिए

window: जावास्क्रिप्ट में एक ब्राउज़र में एक खुली खिड़की का प्रतिनिधित्व करता है।

location: जावास्क्रिप्ट में वर्तमान URL के बारे में जानकारी है।

locationवस्तु का एक टुकड़ा की तरह है windowवस्तु और के माध्यम से ऊपर कहा जाता है window.locationसंपत्ति।

location ऑब्जेक्ट के तीन तरीके हैं:

  1. assign(): एक नया दस्तावेज़ लोड करने के लिए उपयोग किया जाता है
  2. reload(): वर्तमान दस्तावेज़ को पुनः लोड करने के लिए उपयोग किया जाता है
  3. replace(): वर्तमान दस्तावेज़ को एक नए के साथ बदलने के लिए उपयोग किया जाता है

इसलिए यहां हमें उपयोग करने की आवश्यकता है reload(), क्योंकि यह हमें उसी दस्तावेज़ को फिर से लोड करने में मदद कर सकता है।

इसलिए इसका उपयोग करें window.location.reload();

Jsfiddle पर ऑनलाइन डेमो

अपने ब्राउज़र को सीधे कैश से सर्वर से पृष्ठ को पुनः प्राप्त करने के लिए कहने के लिए, आप एक trueपैरामीटर पास कर सकते हैं location.reload()। यह विधि IE, क्रोम, फ़ायरफ़ॉक्स, सफारी, ओपेरा सहित सभी प्रमुख ब्राउज़रों के साथ संगत है।


2
आह हा! replace()वह समाधान निकला जिसकी मुझे तलाश थी क्योंकि मुझे क्वेरी स्ट्रिंग में थोड़े बदलाव के साथ अपने पेज को फिर से लोड करने की आवश्यकता थी।
बर्नार्ड हाइमेन

W3schools से: "असाइन (और प्रतिस्थापित) के बीच का अंतर, यह है कि दस्तावेज़ इतिहास से वर्तमान दस्तावेज़ के URL को हटा देता है, जिसका अर्थ है कि वापस नेविगेट करने के लिए" वापस "बटन का उपयोग करना संभव नहीं है। मूल दस्तावेज़।"
पैसाबा पोर एक्वी

54

प्रयत्न:

window.location.reload(true);

'सही' पर सेट किया गया पैरामीटर सर्वर से एक नई प्रति पुनः लोड करता है। इसे छोड़कर कैश से पेज की सेवा करेंगे।

अधिक जानकारी MSDN और मोज़िला प्रलेखन में पाई जा सकती है ।


1
क्या होगा यदि मैं एक बाहरी वेब पेज www.xyz.com/abc को रीफ्रेश करना चाहता हूं?
DoIt

@ डेव: आपको "प्रतिस्थापित" के साथ कोशिश करनी चाहिए जैसा कि बाद में उल्लेख किया गया है
जीन पॉल AKA el_vete

@ विकल्प: मुझे इस उत्तर की सादगी और संसाधनशीलता दोनों पसंद हैं, विशेष रूप से, ऑप की जांच को संतुष्ट करने के लिए कई विकल्प देने के लिए, जिसने कहा, इस स्थिति में एक प्राधिकृत संदर्भित लिंक प्रदान करने के लिए धन्यवाद, भविष्य के संदर्भ के लिए प्रत्येक ब्राउज़र के रूप में। प्रतिपादन के लिए उनका अपना JS इंजन है ... मुझे लगता है कि यह प्रश्न बहुत सामान्य है और यह इस बात पर निर्भर होना चाहिए कि आप क्या चाहते हैं, क्योंकि वेब संदर्भ: " phpied.com/files/location-location/location- " location.html "पूरी तरह से इस प्रश्न के लिए सेशन को संतुष्ट कर सकते हैं। हालाँकि, इसने मेरी मदद की;)
जीन पॉल AKA el_vete

क्या यह अभी भी सच है? उन दोनों लिंक में पुनः लोड के लिए किसी भी पैरामीटर का उल्लेख नहीं है।
रुडिगर शूज

49

मैं POST अनुरोधों के साथ पुनर्प्राप्त पृष्ठों पर पुनः लोड के बारे में कुछ जानकारी की तलाश कर रहा था, जैसे कि सबमिट करने के बाद method="post" फॉर्म ।

POST डेटा रखने वाले पृष्ठ को पुनः लोड करने के लिए , उपयोग करें:

window.location.reload();

POST डेटा छोड़ने वाले पृष्ठ को पुनः लोड करने के लिए (GET अनुरोध करें) का उपयोग करें:

window.location.href = window.location.href;

उम्मीद है कि यह उसी जानकारी की तलाश में दूसरों की मदद कर सकता है।


POSTअनुरोध के साथ पुनर्प्राप्त किए गए दस्तावेज़ को फिर से लोड करने के संदर्भ सहित उत्तर के लिए धन्यवाद ।
क्रिस्टोफर

GETऔर POSTतरीकों के बीच अच्छा अंतर
हसन बेग

यह उत्तर बहुत नीचे था!
ग्रेग रान्डेल

1
window.location.href = window.location.hrefयदि वर्तमान url में a हो तो पृष्ठ को पुनः लोड नहीं करता है #। यदि आपको इसकी आवश्यकता नहीं है तो आप हैश को हटा सकते हैं window.location.href = window.location.href.split('#')[0];
रोलैंड स्टार्क

40

जावास्क्रिप्ट का उपयोग करते हुए किसी पृष्ठ को पुनः लोड करने के लिए, उपयोग करें:

window.location.reload();

37

यह मेरे लिए काम करता है:

function refresh() {    
    setTimeout(function () {
        location.reload()
    }, 100);
}

http://jsfiddle.net/umerqureshi/znruyzop/


यह, मेरे लिए, बेहतर है, क्योंकि यह सर्वर-साइड पर एक लूप कंडीशन से बचा जाता है
ILMostro_7

1
मैं विशेष रूप से टाइमआउट फ़ंक्शन को शामिल करने की सराहना करता हूं क्योंकि मेरे पास एक संदेश है जो मैं अभी भी चाहता हूं कि ताज़ा होने से पहले देखा जाए। कुडोस!
मैट क्रेमेंस

आप सेट टाइमआउट फ़ंक्शन के दूसरे तर्क के रूप में विभिन्न मान सेट कर सकते हैं, लेकिन यह कार्य नहीं करेगा, पुनः लोड तुरंत होगा, इसे कैसे हल करें?
O.Kuz

1
@ O.Kuz ऐसा नहीं लगता। मान लें कि यदि आप मान 5000ms पर सेट करते हैं तो 5 सेकंड के बाद पुनः लोड होगा। jsfiddle.net/umerqureshi/znruyzop/446
umer

1
मुझे अपने कोड में एक गलती खोजने की आवश्यकता है) बहुत बहुत धन्यवाद!
O.Kuz

15

यदि आप डालते हैं

window.location.reload(true);

आपके पेज की शुरुआत में कोई अन्य शर्त क्वालिफाइंग नहीं है कि वह कोड क्यों चलता है, पेज लोड होगा और तब तक अपने आप को फिर से लोड करना जारी रखेगा जब तक कि आप अपना ब्राउज़र बंद नहीं करते।


खैर, या जब तक आप एक और URL नहीं खोलते। यह संभवतः ब्राउज़र की निरंतर पृष्ठ (पुनः) भार को संभालने की क्षमता पर निर्भर करता है।
एडमंडडसन

अच्छी तरह से यह निर्भर करता है कि आपने इसे कहाँ रखा है जैसा कि आपने सही कहा है। हम यहां केवल इस बात का उल्लेख कर रहे हैं कि शायद एक एंकर टैग पृष्ठ को फिर से लोड करने जैसी कार्रवाई को निष्पादित करने के लिए सहज तत्व नहीं है। सुझाव: हम इस तरह एक और यूआई ऑब्जेक्ट पर एक onclick घटना करने के लिए लक्ष्य के रूप में भरोसा करते हैं। पेज को एक div को टारगेट करके लोड किए जाने के बाद आप इसे jQuery में कर सकते हैं, उदाहरण के लिए यदि आप इसे css से सजाते हैं .. तो यह निर्भर करता है कि आप इसके साथ क्या करना चाहते हैं। उस संदर्भ में एक इनपुट टाइप बटन के बजाय एक बटन। यदि हम बैकएंड ऐप के लिए एक तर्क पारित करने की योजना नहीं बना रहे हैं तो यह अधिक उपयुक्त लगता है।
जीन पॉल AKA el_vete

IE: <बटन onclick = "जावास्क्रिप्ट: window.location.reload (true);"
जीन पॉल AKA el_vete

11
location.href = location.href;

5
आधुनिक ब्राउज़र इसे अनदेखा करते हैं क्योंकि href नहीं बदलता है इसलिए इसे पुनः लोड करने की कोई आवश्यकता नहीं है। आप फिर से लोड के बिना केवल पुराने ब्राउज़र के लिए विफलता के रूप में उपयोग करना चाहिए: (location.reload location.reload (): location.href = location.href)
राडेक पेच

@RadekPech कौन से पुराने ब्राउज़र नहीं हैं location.reload()?
मथियास

8

इसे आसान और सरल बनाने के लिए, उपयोग करें location.reload()location.reload(true)यदि आप सर्वर से कुछ हड़पना चाहते हैं तो आप इसका उपयोग भी कर सकते हैं ।


8

बटन का उपयोग करना या इसे "ए" (एंकर) टैग के अंदर रखना:

<input type="button" value="RELOAD" onclick="location.reload();" />

अन्य आवश्यकताओं के लिए इन्हें आज़माएँ:

Location Objects has three methods --

assign() Used to load a new document
reload() Used to reloads the current document.
replace() Used to replace the current document with a new one

1
दिलचस्प ... कैसे <बटन> </ बटन> के बारे में? वही, सही काम करता है?
जीन पॉल AKA el_vete

1
यह एक आकर्षण की तरह काम किया! नीचे मेरा जवाब देखें :) धन्यवाद
जीन पॉल AKA el_vete


4

20 सेकंड के बाद स्वचालित पुनः लोड पृष्ठ।

<script>
    window.onload = function() {
        setTimeout(function () {
            location.reload()
        }, 20000);
     };
</script>

4

धन्यवाद, यह पोस्ट बहुत उपयोगी थी, न केवल सुझाए गए उत्तर के साथ पृष्ठ को फिर से लोड करने के लिए, बल्कि मुझे एक बटन पर jQuery यूआई आइकन लगाने के लिए विचार देने के लिए भी:

<button style="display:block; vertical-align:middle; height:2.82em;"
        title="Cargar nuevamente el código fuente sin darle un [Enter] a la dirección en la barra de direcciones"
        class="ui-state-active ui-corner-all ui-priority-primary" 
        onclick="javascript:window.location.reload(true);">
    <span style="display:inline-block;" class="ui-icon ui-icon-refresh"></span>
    &nbsp;[<b>CARGAR NUEVAMENTE</b>]&nbsp;
</button>

यह दिखाने के लिए संपादित किया गया कि किसी प्रोजेक्ट में शामिल होने पर यह कैसा दिखता है

2016/07/02

मेरी क्षमा याचना के रूप में यह एक निजी परियोजना है जो jQuery UI, Themeroller, Icons ढाँचे, jQuery टैब जैसी विधियों का उपयोग करके होती है, लेकिन यह स्पेनिश में है;)


@Peter मोर्टेनसेन: एडिट के लिए धन्यवाद, वह प्रोजेक्ट प्रोटोटाइप कॉलेज के लिए किया गया था, इसलिए इसे स्पैनिशपट्र्स में स्पैनिश में होना आवश्यक था .. उस के लिए मेरी क्षमायाचना..अब बेशक, कुछ jQuery के यूआई कोर की आवश्यकता थी इसे बनाने के लिए निर्भरताएँ जैसे कि एक साथ मिलती हैं: --- उदाहरण के लिए ThemeRoller विजेट jqueryui.com/themeroller , और प्लगइन्स जैसे: plugins.jquery.com/qTip2 , datatables.net .. jQuery लाइब्रेरी खुद, आदि। लेकिन, लेकिन उपरोक्त कुछ प्रतिक्रियाओं के आधार पर कार्रवाई की गई: onclick = "javascript: window.location.replus (true);">
जीन पॉल AKA el_vete

3

यह काम करना चाहिए:

window.location.href = window.location.href.split( '#' )[0];

या

var x = window.location.href;
x = x.split( '#' );
window.location.href = x[0];

मैं निम्नलिखित कारणों से इसे पसंद करता हूं:

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

वैकल्पिक रूप से, आप इस कार्य के लिए सबसे हालिया आधिकारिक विधि का उपयोग कर सकते हैं

window.location.reload()

3

पृष्ठ को ताज़ा करने के लिए इस बटन का उपयोग करें

डेमो

<input type="button" value="Reload Page" onClick="document.location.reload(true)">

2

वर्तमान दस्तावेज़ को पुनः लोड करने के लिए पुनः लोड () विधि का उपयोग किया जाता है।

पुनः लोड () विधि आपके ब्राउज़र में पुनः लोड बटन के समान है।

डिफ़ॉल्ट रूप से, पुनः लोड () विधि पृष्ठ को कैश से पुनः लोड करती है, लेकिन आप इसे बल से पृष्ठ को पुनः लोड करने के लिए बाध्य कर सकते हैं ताकि बल पैरामीटर को सही: location.reload (सत्य) पर सेट किया जा सके।

        location.reload();

-3

आप बस उपयोग कर सकते हैं

window.location=document.URL

जहाँ document.URL को वर्तमान पृष्ठ URL मिलता है और window.location इसे पुनः लोड करता है।


2
आधुनिक ब्राउज़र इसे अनदेखा करते हैं क्योंकि href नहीं बदलता है इसलिए इसे पुनः लोड करने की कोई आवश्यकता नहीं है। आपको इसे पुनः लोड किए बिना पुराने ब्राउज़रों के लिए केवल विफलता के रूप में उपयोग करना चाहिए: (location.reload; location.reload (): location = document.URL)
Radek Pech
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.