2016-01-07 3 views
0

У меня есть сетка при нажатии на ссылку пейджера, а затем возвращение html с сервера с помощью ajax-вызова, а новая сетка html получает добавление в div. В новом html-содержимом есть кнопка, которая имеет класс под названием edit-user.JQuery: динамическое содержимое страницы и кнопка присоединения нажмите

поэтому я написал этот код для прикрепления jquery click с кнопкой, которая добавляется на страницу динамически ..... но в моем случае она не работает.

$(function() { 
    $('#gridContent').on('click','.edit-user', function() { 
     var tr = $(this).parents('tr:first'); 
     $(tr).addClass('Editing'); 
     if ($(tr).find("td:nth-child(2)").hasClass('PadOn')) { 
      $(tr).find("td:nth-child(2)").removeClass("PadOn"); 
      $(tr).find("td:nth-child(3)").removeClass("PadOn"); 
      $(tr).find("td:nth-child(4)").removeClass("PadOn"); 
      $(tr).find("td:nth-child(5)").removeClass("PadOn"); 

     } 

     $(tr).find("td:nth-child(2)").addClass("PadOff"); 
     $(tr).find("td:nth-child(3)").addClass("PadOff"); 
     $(tr).find("td:nth-child(4)").addClass("PadOff"); 
     $(tr).find("td:nth-child(5)").addClass("PadOff"); 

     tr.find('.edit-mode, .display-mode').toggle(); 
     $(tr).find("input[id*='txtFirstName']").focus(); 
     return false; 
    }); 

Я использую версию файла jquery v1.10.2. ищет помощь и предложение, например, когда я сделал ошибку, для которой новая кнопка не привязана к событию click jquery button. благодаря

+0

Является ли '# gridContent' также динамическим? – Azim

+0

нет ... содержимое ajax добавляется в #gridContent. – Mou

ответ

0

проблема сортируется с этим кодом

$(document).on('click', '.edit-user', function() { 
var tr = $(this).parents('tr:first'); 
     $(tr).addClass('Editing'); 
     if ($(tr).find("td:nth-child(2)").hasClass('PadOn')) { 
      $(tr).find("td:nth-child(2)").removeClass("PadOn"); 
      $(tr).find("td:nth-child(3)").removeClass("PadOn"); 
      $(tr).find("td:nth-child(4)").removeClass("PadOn"); 
      $(tr).find("td:nth-child(5)").removeClass("PadOn"); 

     } 

     $(tr).find("td:nth-child(2)").addClass("PadOff"); 
     $(tr).find("td:nth-child(3)").addClass("PadOff"); 
     $(tr).find("td:nth-child(4)").addClass("PadOff"); 
     $(tr).find("td:nth-child(5)").addClass("PadOff"); 

     tr.find('.edit-mode, .display-mode').toggle(); 
     $(tr).find("input[id*='txtFirstName']").focus(); 
     return false; 
    }); 

благодаря

1

Попробуйте как следующее. Надеюсь, это поможет.

$('body').on('click','.edit-user', function() { 
    //your code 
}); 
Смежные вопросы