راکت

کنترل رفرش شدن صفحه سایت توسط ajax

5 پاسخ

سلام.
من میخوام قسمتی از سایت مثلا سایدبار و نوبار ثابت بمانند و فقط body ی صفحه تغیر کنه مثلا روی هر لینک در سایدبار کلیک بشه فقط قسمت بادی تغیر کنه میدونم از ایجکس باید اسفاده کنم ولی همه ی آمورش درباره ارسال فرم بصورت ایجکس به سمت سرور اشاره کردن و به این موردی که من گغتم اشاره ی نشده اگر هم آمورشی سراغ دارید ممنون میشم
توضیح تصویر رو وارد کنید

ثبت پرسش جدید

پاسخ‌ها

5
سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

اگر از کتابخانه یا فریمورک های جاوا اسکریپتی استفاده میکنی اونجا بحث کامپونت و ارسال اطلاعات به کامپونت ها هستش
در غیر اینصورت بنظرم از pjax هم میتونی استفاده کنید
https://pjax.herokuapp.com/

Sadegh S too
Sadegh S too
@sadegh.stoo

میشه بشتر توضیح بدبد منظورتون از (اگر از کتابخانه یا فریمورک های جاوا اسکریپتی استفاده میکنی اونجا بحث کامپونت و ارسال اطلاعات به کامپونت ها هستش) چی هست ؟

شاید پاسخ شما همین‌جا باشد

محمدحسن یگانه
محمدحسن یگانه
@mhyeganeh

تخصص: Full-Stack Web Developer Freelancer

در چنین مواردی معمولا از یک فریم ورک جاوااسکریپتی مثل Vue.js یا React.js یا Angular و قابلیت SPA استفاده میشه که کار رو تا حد زیادی ساده تر می‌کنند.

اما بصورت کلی اگر بخواهید با منطق کار هم آشنا بشید چیز پیچیده ای نیست. با جاوااسکریپت شما کنترل خیلی خوبی روی اجزای صفحه تون دارید و می‌تونید هر بلایی خواستید سرشون بیارید.
یعنی مثلا می‌تونید بگید هر وقت روی فلان المنت کلیک شد، یک درخواست به URL دلخواهاتون بصورت Ajax ارسال بشه و بعد متناسب با خروجی که بک اندتون میده محتوای صفحه رو بروزرسانی کنید. تمامی این کارها با جاوااسکریپت ساده هم قابل انجامه. ولی همون طوری که عرض کردم برای سادگی و اصولی تر شدن کار، بهترین راهکار استفاده از همین فریم ورک های جاوااسکریپتی هست.

موفق و پیروز باشید.

علیرضا کفایتی
علیرضا کفایتی
@alirezakefayati

تخصص: برنامه نویس laravel, vue.js

سلام
باید صفحاتتون رو به صورت spa در بیارید . (single page application)
اما این کار رو معمولا با فریمورک های Javascript مثل ری اکت و انگولار و ویو انجام میدهند . اما انجام آن به صورت ajax ممکن نیست . راه دیگری دارد .
بهتره بیاید بگید اگه روی فلان المنت کلیک شد یک درخواست به سرور ارسال شود و شما هم سمت سرور مقادیری رو ارسال کنید و دریافت کنید و نمایش دهید . اما پیشنهاد می کنم اگر از لاراول استفاده می کنید برای این مورد و موارد مشابه سراغ لایووایر بروید که کارتون راحت تر باشه

محمد شامخی
محمد شامخی
@mohamadshamekhi

تخصص: fullstack developer

@sadegh.stoo

سلام وقت بخیر
خیلی راحت میتونی با استفاده متد

  event.preventDefault()

بیای جلوی refresh صفحه رو بگیری خیلی راحت
https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault
https://www.w3schools.com/jsref/event_preventdefault.asp

اینم نمونه کد خدمتت

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام