نمایش نتایج 1 تا 13 از 13

نام تاپیک: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

  1. #1

    نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    سلام.
    من یه صفحه دارم که تو اون به صورت ajaxای سرچ انجام میشه. یعنی مقادیری که کاربر سرچ می کنه توسط ajax به برنامه ارسال می شه.
    وقتی کابر به یه صفحه بعد میره و backمیزنه، آیا میشه کاربر رو به صفحه ای برد که سرچ کرده بود؟ یعنی نتایج سرچش رو ببینه؟

    سرچ کردم گفته بودن با window.history.back(); میشه. اما جواب نمیده...

  2. #2
    [younes]
    مهمان

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    میتونید در سمت سرور یک کوکی ست کنید و تاریخچه ی کاربر رو نگه دارید یا اصلا میشه یک جایی نتیجه جستوجو رو کش کرد......

  3. #3

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    نقل قول نوشته شده توسط [younes] مشاهده تاپیک
    میتونید در سمت سرور یک کوکی ست کنید و تاریخچه ی کاربر رو نگه دارید یا اصلا میشه یک جایی نتیجه جستوجو رو کش کرد......
    کار دیگه ای نمیشه کرد؟ مثلا اینکه URL ام رو عوض کنم و شرطی که ایجاد شده رو در URL بزارم.
    اگه اینکار انجام بشه، وقتی به صفحه جدید میریم و backمیزنیم به url ای که خودم ایجاد کردم میره؟

  4. #4

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    window.history.pushState میتونه کمک کنه؟
    من باهاش کار نکردم

  5. #5
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    اگه زبان بک اندت php هستش از pjax استفاده کن خودش حافظه رو مدیریت میکنه وقتی دکمه بک بزنی

  6. #6

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    نقل قول نوشته شده توسط plague مشاهده تاپیک
    اگه زبان بک اندت php هستش از pjax استفاده کن خودش حافظه رو مدیریت میکنه وقتی دکمه بک بزنی
    از .net استفاده می کنم

  7. #7
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    البته فکرش رو که میکنم ربطی به زبان بک اند نباید داشته باشه
    یه سرچ کنی میبینی که ظاهرا برای asp هم استفاده میشه
    http://www.programering.com/a/MDN3ITMwATY.html

  8. #8

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    نقل قول نوشته شده توسط plague مشاهده تاپیک
    البته فکرش رو که میکنم ربطی به زبان بک اند نباید داشته باشه
    یه سرچ کنی میبینی که ظاهرا برای asp هم استفاده میشه
    http://www.programering.com/a/MDN3ITMwATY.html
    ممنونم از شما.
    یه سوال. البته این رو هم بگم که سرچ کردم اما چیزی متوجه نشدم
    مزیت pjax نسبت به ajax چیه و روی این مشکل من تا چه حد کمک می کنه؟

  9. #9
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    pjax از همون ایجکس استفاده میکنه ولی این اومده خیلی قسمت هاش رو مدیریت کرده و یه سری ملاحظات و امکانات رو در نظر گرفته که خیلی به کار میان
    مثلا شما فرض کن صفحه محصولات داری که لیست محصولات رو نشون میده , شما میخای این رو کاملا با ایجکس بنویسی ولی چند تا مشکل هست که من مهماشون رو مثال میزنم

    1 - دکمه بک کار نخواهد کرد (همین مشکل شما )
    2 - مشکل دوم که بی ربط به مشکل اول نیست اینه که تغییرات در صفحه میده کاربر پایدار نیستن , فرض کن شما چندین نوع فیلترینگ انجام میدی روی محصولاتی که داری میبینی , مثلا مرتب سازیشون رو بر اساس قیمت میزاری و دسته بندی رو x میزاری و ...یا اینکه صفحه بندی کلیک میکنی میری صفحه 100 .... الان اگه صفحه رو رفرش کنید همه فیلترینگ و تنظیمات شما از بین میره و صفحه هم بررمیگرده به 1
    3 - از نظر سئو به مشکل برمیخوری چون خیلی از ربات ها نمیتونن جاوا اسکریپت رو اجرا کنن در نتیجه مثلا خزنده موتور جستجو اگه تو سایت شما بیاد نمیتونه بره صفحه 2 محصولاتتون رو ایندکس کنه

    همه اینها راه حل داره مثلا مورد 1 با جاواسکریپت باید حافظه رو مدیریت کنید
    یا مورد 2 راه حلش اینه که url صفحه همزمان با تغییرات درون صفحه تغییر کنه تا با رفرش کردن فیلتر ها از بین نره
    یا مورد 3 راه حلش اینه که لینک ها رو هم با ایجکس بسازید هم در کنارش با html خالی هم قرار بدین و بک اندتون رو جوری بنویسید که به هر 2 شکل پاسخ مناسب رو بده

    ما فرض کن اصلا ایجکس نداری کدهات رو بنویس باhtml خالی بعد کتابخونه pjax رو ضمیمه کن تو صفحت و لینک هات رو بهش معرفی کن مثلا
     $(document).pjax('.pagination a');

    دیگه وقتی کسی روی این لینک کلیک کرد pjax سکان رو در دست میگیره با ایجکس درخواست میفرسته به بک اند داده رو میگیره و میاره تو صفحه لود میکنه در عین حال بدون اینکه صفحه رفرش بشه لینک صفحه رو هم تغییر میده به لینک صفحه جدید و در کنار اون صفحه قبلی رو هم به خاطر میسپره که توش چی بود تا اگه روی بک کلیک کردی همون قبلی رو ببینی
    اینجوری مشکل 1و2 حل میشه اگرم ربات بیاد تو سایت pjax کلا عمل نمیکنه و کد های html شما کار خودشون رو میکنن

  10. #10

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    سلام
    PAJAX راه حل خوبی ه ولی باز هم از سرور دریافت میشه اطلاعاتت
    راه حلی که من برای یه پروژه جستجو استفاده کردم نگه داشتن نتیجه هر جستجو در داخل صفحه خودم در یک فیلد Hidden بود که یه خصوصیت data-search به هر فیلد اضافه میکردم که چه نتیجه جستجویی منجرب به چه نتیجه ای از سمت سرور شده
    البته اگه نتایج جستجو هات تغییر نمیکنه
    برای برگشت هم میتونی از رویداد های کیبورد کلید هایی که میخوای و بگیری و نتایج جستجوتو هم یا تو کوکی یا تو یه فیلد Hidden بصورت لیست ذخیره کنی
    موفق باشی

  11. #11
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    نقل قول نوشته شده توسط نیما عطایی مشاهده تاپیک
    سلام
    PAJAX راه حل خوبی ه ولی باز هم از سرور دریافت میشه اطلاعاتت
    راه حلی که من برای یه پروژه جستجو استفاده کردم نگه داشتن نتیجه هر جستجو در داخل صفحه خودم در یک فیلد Hidden بود که یه خصوصیت data-search به هر فیلد اضافه میکردم که چه نتیجه جستجویی منجرب به چه نتیجه ای از سمت سرور شده
    البته اگه نتایج جستجو هات تغییر نمیکنه
    برای برگشت هم میتونی از رویداد های کیبورد کلید هایی که میخوای و بگیری و نتایج جستجوتو هم یا تو کوکی یا تو یه فیلد Hidden بصورت لیست ذخیره کنی
    موفق باشی
    سلام
    مرورگر نتیجه درخواست های ایجکس رو کش میکنه
    pjax در هنگام زدن دکمه بک و فوروارد از کش مرورگر میخونه داده ها رو و درخواست جدید ارسال نمیکنه به سرور
    جسارتا به نظر من روش شما هم خیلی تمیز نیست هم اینکه خیلی از مشکلاتی که بالا گفتم رو حل نمیکنه

  12. #12

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    نقل قول نوشته شده توسط plague مشاهده تاپیک
    سلام
    مرورگر نتیجه درخواست های ایجکس رو کش میکنه
    pjax در هنگام زدن دکمه بک و فوروارد از کش مرورگر میخونه داده ها رو و درخواست جدید ارسال نمیکنه به سرور
    جسارتا به نظر من روش شما هم خیلی تمیز نیست هم اینکه خیلی از مشکلاتی که بالا گفتم رو حل نمیکنه
    به نظر میاد اطلاعات رو از سرور میخونه.
    این لینک رو ببینید
    https://github.com/defunkt/jquery-pjax

  13. #13
    کاربر دائمی آواتار plague
    تاریخ عضویت
    آبان 1388
    محل زندگی
    اهواز
    پست
    2,360

    نقل قول: نگه داشتن نتایج سرچ ajax ای با زدم دکمه back

    نقل قول نوشته شده توسط resident مشاهده تاپیک
    به نظر میاد اطلاعات رو از سرور میخونه.
    این لینک رو ببینید
    https://github.com/defunkt/jquery-pjax
    عرض کردم که در هنگام زدن کلید بک و فوروارد از کش میخونه
    وگرنه مشخصه که اطلاعات اولیه باید از سرور خونده بشن

تاپیک های مشابه

  1. finish اکتیویتی با کلیک دکمه back
    نوشته شده توسط soroushbonab در بخش Android Studio
    پاسخ: 1
    آخرین پست: پنج شنبه 07 خرداد 1394, 00:23 صبح
  2. اگه کاربر با زدن دکمه back به صفحه برگشت...
    نوشته شده توسط milad_d993 در بخش PHP
    پاسخ: 0
    آخرین پست: چهارشنبه 01 خرداد 1392, 12:30 عصر
  3. مبتدی: اجرای PageLoad با زدن دکمه Back
    نوشته شده توسط ozzy_mra در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: شنبه 11 تیر 1390, 18:30 عصر
  4. پاسخ: 3
    آخرین پست: چهارشنبه 10 شهریور 1389, 14:22 عصر
  5. expire شدن صفحه با زدن دکمه back
    نوشته شده توسط jeniferxp در بخش ASP.NET Web Forms
    پاسخ: 6
    آخرین پست: چهارشنبه 21 فروردین 1387, 14:26 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •