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

نام تاپیک: اجرای چند باره رویداد

  1. #1
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1392
    محل زندگی
    یزد
    پست
    210

    اجرای چند باره رویداد

    سلام

    من در لیست اطلاعات برای حذف آیتم ها یک پاپ آپ نوشتم که زمان کلیک روی گزینه حذف, یک تایید از کاربر بگیره و مشکلی در اجرا نداره , ولی وقتی که فیلتر های لیست که همگی با جی کوئری هست مثل جستجو و ... را اجرا کنم و یا اگه به صفحه دیگه برم و بعد حذف را بزنم تابع چند بار اجرا می شود, به تعداد اجرای توابع جی کوئری. راه حل چیست؟

    ممنون


    با این کد پاپ آپ تایید باز می شه


    function delete_popup(msg, cancel_btn_txt, confirm_btn_txt, confirm_btn_class, delete_current_id){
    $(this).deletePopUp({
    msg : msg,
    cancel_btn_txt : cancel_btn_txt,
    confirm_btn_txt : confirm_btn_txt,
    confirm_btn_class : confirm_btn_class,
    delete_current_id : delete_current_id,
    });
    }


    $('.del-edu').on('click', function(e) {
    delete_current_id = $(this).attr('id');
    delete_popup('<?php echo lang('are_you_sure'); ?>', '<?php echo lang('cancel'); ?>', '<?php echo lang('confirm'); ?>', 'confirm-delete-edu', delete_current_id);
    });






    وقتی رو گزینه تایید می زنم چند بار اجرا می شه



    $('body').on('click', '.confirm-delete-edu', function(e){
    e.preventDefault();
    var id = $(this).attr('id');
    ....
    run ajax for delete

    });
    آخرین ویرایش به وسیله tooka123 : جمعه 19 اردیبهشت 1399 در 16:33 عصر

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

    نقل قول: اجرای چند باره رویداد

    حدس میزنم صفحه بندی یا فیلترت با ایجکس باشه یعنی با کلیک روی صفحه دوم محتوایت صفحه دوم از طریق ایجکس دریافت و جایگزین میشن تو صفحه
    از اونجاییکه کد های js/jquery به خود صفحه تزریق میشن , با جایگزین کردن یک تیکه از کدت کد قبلی از بین نمیره بلکه کد جدید هم بهش اضافه میشه در نتیجه 2 بار اجرا خواهد شد (یا حالا به هر تعدادی که جایگزین شده باشه محتوا )
    راه حلش اینه که کد های js رو ببری بیرون از اون قسمتی که جایگزین میشه قرار بدی ... یا اینکه توی یک فایل .js بزاری و اون فایل رو ضمیمه کنی تو صفحت

  3. #3
    کاربر دائمی
    تاریخ عضویت
    اردیبهشت 1392
    محل زندگی
    یزد
    پست
    210

    نقل قول: اجرای چند باره رویداد

    بله صفحه بندی و فیلتر ajax هست, اومدم به جای e.preventDefault() کد e.stopImmediatePropagation(); رو گذاشتم درست شد

    حالا اگه یه نفر دوبار همزمان روی یک گزینه کلیک کنه دوبار اجرا می شه, اینو چه طور چک کنم تا کاربر یه بار بیشتر نتونه کلیک کنه و اگه چند بار شد فقط یه بار اجرا بشه؟

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

    نقل قول: اجرای چند باره رویداد

    پروسه اینجوری باشه که وقتی کلیک میشه یه کلاس به دکمه اضافه کن و در پایان عملیات اون کلاس رو حذف کن از دکمه
    حالا در ابتدای هر کلیک چک میکنی دکمه اون کلاس رو داره یا نه اگه داشت یعنی یبار قبلش کلیک کرده و در حال انجام عملیاته و ادامه نده

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

  1. پاسخ: 11
    آخرین پست: چهارشنبه 08 مهر 1394, 12:37 عصر
  2. پاسخ: 2
    آخرین پست: پنج شنبه 22 آبان 1393, 17:34 عصر
  3. پاسخ: 3
    آخرین پست: دوشنبه 02 دی 1392, 00:10 صبح
  4. پاسخ: 1
    آخرین پست: پنج شنبه 12 بهمن 1391, 11:21 صبح
  5. چی کار کنیم کامپیوتر ویروسی نشه؟ و آیا آنتی ویروس براتون نصبه؟
    نوشته شده توسط حمید محمودی در بخش گفتگوی عمومی کامپیوتر و فناوری اطلاعات
    پاسخ: 17
    آخرین پست: سه شنبه 18 خرداد 1389, 09:47 صبح

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

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