روشهای مختلف Refresh کردن صفحه با Javascript

روشهای مختلف Refresh کردن صفحه با Javascript

در این مطلب میخوایم روشهای مختلفی که با استفاده از اون میتونین صفحه مرورگر رو با استفاده از Javascript رفرش یا Refresh کنید، بهتون آموزش بدم.

روشهای زیادی برای انجام اینکار وجود داره ولی میشه گفت اصلی‌ترین اونا استفاده از location.reload هست که با استفاده از اون میتونین صفحه رو Refresh کنید. برای اینکار بصورت زیر عمل میکنیم:

location.reload(); // location.reload(false)

زمانی که این متد رو بدون هیچ ورودی فراخوانی میکنیم، بصورت پیش فرض false در نظر گرفته میشه و Refresh عادی انجام میشه و اطلاعات از کش خونده میشه و از سرور دریافت نمیشن. اما اگر میخواید Hard refresh کنید و اطلاعات و فایلها مجددا از سرور دریافت بشن، میتونین بصورت زیر عمل کنید:

location.reload(true);

به همین راحتی.

روشهای دیگه ای هم وجود داره که میتونین از اونا استفاده کنید:
[lineltr]

  • [tag]history.go(0)[/tag]
  • [tag]location.href = location.href[/tag]
  • [tag]location.href = location.pathname[/tag]
  • [tag]location.replace(location.pathname)[/tag]
  • [tag]window.location = window.location[/tag]
  • [tag]window.self.window.self.window.window.location = window.location[/tag]
  • و …

[/lineltr]
جالبه که بدونین 534 روش دیگه! هم وجود داره که میتونین این کار رو انجام بدین و صفحه رو با استفاده از javascipt رفرش کنید. برای مشاهده این روشها میتونین این لینک رو ببینید.

به همین راحتی.

 
ارسال دیدگاه
ما همه سوالات و دیدگاه ها رو می خونیم و پاسخ میدیم
۱۴ دیدگاه
کوروش ۲۰ بهمن ۱۳۹۹، ۰۷:۲۲
سلام ببخشید اگه بخوایم یه سیستم مثل سیستم چت داشته باشیم که فقط بخوایم یه بخش خاص ریلود بشه مثلا توی چت بخش پیام ها ریلود بشه چیکار کنم ؟؟؟
نازنین کریمی مقدم ۲۰ بهمن ۱۳۹۹، ۱۸:۱۶
درود.
شما باید از تایمر استفاده کنید.
برای رفرش یک بخش مثل گرید میتونید راهکارهای روبه رو رو امتحان کنید: how refresh grid
فقط دقت کنید که اگر تنها ویو رو رفرش کنید، داده آپدیت نمیشه. خیلی از افراد این اشتباه رو میکنند. باید در تابع رفرش بنویسید که اطلاعات یکبار دیگه از دیتابیس گت شه.
mahdi ۰۵ تیر ۱۳۹۹، ۱۶:۴۹
سلام من یه بازی دوز با استفاده از html css و js ساختم میخوام صفحه بعد از اینکه بازی تموم شد خودکار رفرش بشه چی کار کنم
فائقه نامور ۱۹ مرداد ۱۳۹۹، ۲۱:۳۳
سلام ممنون از توجه شما
موردی که اشاره فرمودید به تیم تولید محتوا انتقال داده می شود
زهرا ۰۷ خرداد ۱۳۹۹، ۰۹:۴۱
اگر یک صفحه asp داشته باشیم و بخواهیم هر 30 ثانیه فقط قسمتی از صفحه مثلا یک گرید رفرش بشه باید چه کار کنیم
نازنین کریمی مقدم ۰۹ مهر ۱۳۹۹، ۲۲:۰۴
سلام.
برای اینکه هر 30 ثانیه رفرش شه، شما باید از تایمر استفاده کنید.
برای رفرش گرید میتونید راهکارهای روبه رو رو امتحان کنید: how refresh grid
فقط دقت کنید که اگر تنها ویو رو رفرش کنید، داده آپدیت نمیشه. خیلی از افراد این اشتباه رو میکنند.
فاضل ۰۹ مرداد ۱۳۹۸، ۱۱:۰۸
سلام میخواستم بدونم هیچ را هی هست که بتونیم با alertاول رمز رو از کار بر بگیریم بعد اگر رمز درست بود صفحه لود بشه اگه درست نبود دوباره پیام رمز را وارد کنید ظاهر بشه با این تغیر که داخلش نوشته شده باشه که رمز قبلی درست نبوده
zohre mehran ۰۹ تیر ۱۳۹۷، ۱۲:۰۹
سلام دوستان من میخوام دفعه اول که کاربر وارد یکی از صفحات سایتم میشه اگه روی یک تگ a کلیک کرده باشه صفحه رفرش نشه در غیر این صورت رفرش بشه ممنون میشم راهنماییم کنید
محمد اسفندیاری ۱۵ تیر ۱۳۹۷، ۱۶:۳۱
شما میتونین با استفاده از Cookie یا Localstorage یا ... زمانی که کاربر بر روی لینک مورد نظر کلیک میکنه، یک کلید و مقدار رو ذخیره کنید و با توجه به اونا تصمیم بگیرید که نیاز به رفرش صفحه هست یا خیر...
در صورت نیاز به رفرش کردن میتونین با استفاده از یکی از روشهای بالا این کار رو انجام بدین و صفحه مورد نظر رو رفرش کنید.
موفق باشید
فاطمه ۰۴ خرداد ۱۳۹۷، ۱۸:۲۷
ممنونم دوستان
masoudrad ۰۲ خرداد ۱۳۹۷، ۱۹:۱۸
اضافه کردن jquery به وبسایت[codeBox]<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>[/codeBox]
فاطمه ۰۱ خرداد ۱۳۹۷، ۱۷:۲۷
با سلام و تشکر از مطالب خوبتون
چطور میشه کدی بنویسیم که هر 20 ثانیه صفحه رو رفرش کنه؟
masoudrad ۰۲ خرداد ۱۳۹۷، ۱۹:۰۹
هم با متا تگ ها میشه:


هم با javascript:
$(document).ready(function() {
setInterval(function() {
cache_clear()
}, 20000);
});

function cache_clear() {
window.location.reload(true);
// window.location.reload(); use this if you do not remove cache
}
البته باید قبلش jquery رو با استفاده از چنین کدی:


به سایتتون اضافه کنین.
محمد اسفندیاری ۰۲ خرداد ۱۳۹۷، ۲۱:۴۰
سلام برای اینکار فقط کافیه که یک متاتگ در قسمت head سایتتون قرار بدین. بصورت زیر:
[codeBox]<meta http-equiv="refresh" content="30">[/codeBox]
با اینکار صفحه شما هر 30 ثانیه یکبار بصورت اتوماتیک رفرش میشه