2017-02-17 5 views
0

У меня этот код отлично работает. Если я использую этот код if ($(e.target).is("#checkId_ i")) и if ($(e.target).is("[id^=checkId_] i")), он пропускает оператор if в теге. Я просто вижу весь этот код от моего друга, но я спрашиваю его, и он также не знает, в чем причина.Таблица данных Bootstrap на корпусе Click

В чем причина, почему код ниже работает, а мой тестовый код не является ?.

Таблица данных

columns: 
    [ 
     { data: "testID", title: "Test Click Button", searchable: false, orderable: false, sClass: "alignCenter", 
      "mRender": function (data) { 
      return '<button type="button" class="btn btn-info btn-xs action" id="checkId_' + data + '"><i class="fa fa-dollar fa-fw action"></i></button>' 
      + '&nbsp; <button type="button" class="btn btn-danger btn-xs action" id="checkId2_' + data + '"><i class="fa fa-dollar fa-fw action"></i></button>'; 
      } 
     } 
    ] 

тела OnClick

$('#tbltest tbody').on('click', 'tr', function (e) { 
    debugger; 
    if ($(e.target).is("[id^=checkId_],[id^=checkId_] i")) { 
     alert("Button 1 is Click"); 
    } else if ($(e.target).is("[id^=checkId2_],[id^=checkId2_] i")) { 
     alert("Button 2 is Click"); 
    } 
    return; 
}); 

ответ

0

Я предлагаю вам использовать ближе:

$('#tbltest tbody').on('click', 'tr', function (e) { 
    e.preventDefault(); 
    if ($(e.target).closest("[id^=checkId_]").length) { 
     alert("Button 1 is Click"); 
    } else if ($(e.target).closest("[id^=checkId2_]").length) { 
     alert("Button 2 is Click"); 
    } 
}); 
+0

Стараюсь свой код и работает отлично. И я пытаюсь изменить идентификатор, как этот '(# checkId2_)' и не работает. Почему? – KiRa

+0

У вас есть кнопка с идентификатором '# checkId2_'? – madalinivascu

+0

'#' означает 'ID' правильно ?. Типично выше. («# checkId2_») – KiRa

Смежные вопросы