لا يمكن الحصول على معرف زر التمهيد من الزر الموجود في صف الجدول

StackOverflow https://stackoverflow.com//questions/23004911

سؤال

أنا أستخدم Bootstrap واعتقدت أنني سأكون ذكيًا وأسقط بعض الأزرار داخل الجدول.للأسف، لا يحدث شيء.تتغير حالة الزر ولكن بخلاف ذلك، لا توجد أخطاء ولا تنبيهات ولا استجابة على الإطلاق.

جدولي المختصر

<table class="table">
    <tr>
        <td>Entry of some sort</td>
        <td><button type="button" class="btn btn-default btn-xs" id="edit_Button">Edit</button></td>
        <td><button type="button" class="btn btn-default btn-xs" id="delete_Button">Delete</button></td>
    </tr>
</table>

مسج للزر الخاص بي

$( document ).ready(function() {    
    $(".table .btn").click(function(e){
        e.preventDefault();
        var id = $(this).attr('id');
        alert(id);
    });
});
هل كانت مفيدة؟

المحلول

تحديد الوظيفة في الداخل $(document).ready(function ()

نظرًا لأنه تم إنشاء الأزرار ديناميكيًا في DOM، فلن يكون حدث النقر متاحًا لهذه الأزرار.في هذه الحالة، سيساعدك تفويض الحدث على إرفاق هذا الحدث.

جرب هذا

$(document).ready(function () {
    $(document).on('click', ".table .btn", function (e) {
        e.preventDefault();
        id = $(this).attr('id')
        alert(id);
    });
});

تجريبي

نصائح أخرى

الرجاء إضافة وظيفتك على Dom Ready

جرب هذا

    $(function(){

        $('body').on('click','.table .btn','',function(e){
          e.preventDefault();
          var id = $(this).attr('id');
          alert(id);
         });

     });

تحقق من العرض التوضيحي هنا

اكتب مسجك في

giveacodicetagpre.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top