💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۱ محمدرضا
رفرش کردن صفحه
محسن موحد حل شده توسط محسن موحد

سلام

چرا هنگام اضافه کردن تسک بیایم صفحه رو رفرش کنیم (location.reload)؟ اصلا ما ایجکس نوشتیم که صفحه رفرش نشه.

اگر تعداد درخواست‌ها به سرور زیاد بشه این رفرش شدن صفحه اذیت میکنه. هرچند الانشم برای من تا بیاد جی کوئری رو از cdn بارگذاری کنه این رفرش شدنه کاملا محسوسه.

همون appendTo بشه بهتر نیست؟

سلام.

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

کدی رو در این تاپیک گذاشته بودم:

$('.isDone').click(function(e){
    var selectedItem = $(this);
    var selectedItemClass = selectedItem.hasClass('fa-check-square-o') ? 'fa-check-square-o' : 'fa-square-o';
    var parent = selectedItem.parent();
    var tid = $(this).attr('data-taskId');
    $.ajax({
      url : "process/ajaxHandler.php",
      method : "post",
      data : {action: "doneSwitch",taskId : tid},
      success : function(response){
          selectedItem.removeClass(selectedItemClass);
          if(selectedItemClass == 'fa-check-square-o') {
              parent.removeClass('checked');
          } else {
              parent.attr('class', 'checked');
          }
          selectedItem.addClass((selectedItemClass == 'fa-check-square-o') ? 'fa-square-o' : 'fa-check-square-o');
      }
    });
});

 

بهترین پاسخ
محسن موحد ۱۲ اردیبهشت ۱۳۹۹، ۰۹:۱۳