Intereting Posts
Скремблирование веб-страницы, созданной javascript с помощью C # несколько classов на одном элементе html как разместить мою веб-страницу, чтобы я мог найти свою страницу в поиске Google? Проблемы с ios7 с фокусом веб-просмотра при использовании клавиатуры html Жирные шрифты в Google Chrome размыты (@ Font-Face) Найдите все стили span с размером шрифта, большим, чем наиболее распространенный, с помощью красивого супа python Нужно ли размещать скрипты в нижней части страницы при использовании атрибута «defer»? Веб-сайт для анализа URL-адресов эллипсис переполнения текста при прокрутке не показывает переполненный контент в Chrome и IE Цвет подсветки JQuery Сделать CSS Grid автозаполнением только 2 столбца Прокрутка jQuery показывает скрытый контент c # Как создать таблицу HTML-таблицы турнира Хорошие причины, по которым не использовать iframes в содержании страницы Ошибка Javascript Uncaught Reference не определена

Ajax получает значение таблицы на основе строки

Я могу получить первое и последнее значение из моей строки, но не могу получить второе и третье значение моей строки. Может кто-нибудь мне помочь.

это мой код

=> Html

 one two three four   

=> Новости

 $(".btnDelete").click(function (evt) { var cell=$(evt.target).closest("tr").children().first(); var cell2=$(evt.target).closest("tr").children().last(); var custID=cell.text(); var custID2=cell2.text(); alert(custID); alert(custID2); } 

Благодарю .

Я думаю, что легче получить эти значения без jQuery. Используя свойство DOM HTMLTableRowElement.cells . Это почти как массив, но не массив.

 $("#myTable").on('click','.btnDelete',function(){ // get the current row var currentRow = $(this).closest("tr")[0]; var cells = currentRow.cells; var firstCell = cells[0].textContent; var secondCell = cells[1].textContent; //... //nthCell = cells[n-1].textContent; console.log( firstCell ); console.log( secondCell ); }); 

Если вы все еще хотите jQuery, то вместо методов .first() и .last() вы можете использовать .eq() .

  var rowCells = $(this).closest("tr").children(); var firstCell = rowCells.eq( 0 ).text(); var secondCell = rowCells.eq( 1 ).text(); 

Вы можете использовать eq(index) чтобы получить значение из td , используя его индекс. Index начинается с 0

 alert($(evt.target).closest("tr").children('td:eq(2)').text()); //get value from 3rd `td` 

Использовать метод nth-child(n)

пример

  $(".btnDelete").click(function (evt) { var cell2 = $(evt.target).parent().parent("tr").find("td:nth-child(2)").text(); var cell3 = $(evt.target).parent().parent("tr").find("td:nth-child(3)").text(); console.log("cell 2 : "+cell2+", cell 3 : "+cell3); }); 
  
one two three four
  $("#myTable").on('click','.btnDelete',function(){ // get the current row var currentRow=$(this).closest("tr"); var col1=currentRow.find("td:eq(0)").text(); // get current row 1st TD value var col2=currentRow.find("td:eq(1)").text(); // get current row 2nd TD var col3=currentRow.find("td:eq(2)").text(); // get current row 3rd TD var data=col1+"\n"+col2+"\n"+col3; alert(data); }); 

Если вы хотите получить определенный элемент внутри div, то с помощью classname вы можете сделать это

 $("#myTable").on('click','.btnDelete',function(){ // get the current row var currentRow=$(this).closest("tr"); var col1=currentRow.find(".classOne").html(); // get current row 1st table cell TD value var col2=currentRow.find(".classTwo").html(); // get current row 2nd table cell TD value var col3=currentRow.find(".classThree").html(); // get current row 3rd table cell TD value var data=col1+"\n"+col2+"\n"+col3; alert(data); }); 

Полное руководство: как получить значение td таблицы таблицы в JQuery

Если вы хотите получить доступ к каждой таблице данных, просто пройдите через тд.

 var cells = []; $(evt.target).closest("tr").children().each(function(key, cell){ cells.push(cell); alert($(cell).text()); }); 

На боковой ноте вы можете заменить evt.target this