Доброго всем дня, в приложении присутствует таблица с колонкой Id и к каждой колонке
есть кнопка. Нужно по нажатию кнопки вводить в консоль значение Id
написал скрипт который по нажатию выводит в консоль id строки. Но почему-то не работает.
Так я вывожу допустим значение Id 4-й строки:
var a = $('.inputik').eq(3).val();
console.log(a);
но мне надо id той колонки, где нажата кнопка. Cделал так, но не сработало:
var a = $('.inputik').eq(this).val();
console.log(a);
Вот моя примерная таблица надо по нажатию на кнопку ввдить значене из Hidden input
ID
Name
Num
Lat
Lot
Status
Actions
1
Driver1
01
0
0
offline
2
Driver2
02
69.442771
45.536307
offline
3
Driver3
03
43.380050
50.30960
offline
4
Driver4
04
50.354619
50.078559
Offline
5
Driver5
05
30.37569
49.778018
Offline
6
Driver6
06
0
0
Offline
Ответы
Ответ 1
Вот версия с eq
$(document).ready(function(){
$('.btn').on('click', function(){
console.log($(this).closest('tr').find('td').eq(0).text());
})
})
Вы неверно пытаетесь взять значение через val(), это подходит для тегов типа input,
к примеру. С тегами типа td нужно брать их содержимое через html().
$('.btn').on('click', function() {
id = $(this).parent().parent().find('td:first-child').html();
console.log(id);
});
#1
blah
blah
#2
blah
blah
#3
blah
blah
Ответ 3
Хочу предложить такой новаторский вариянт:
#3
blah
blah
Скрипт
$('.btn').on('click', function() {
var id = $('.inputik').eq($(this).data('rowIndex')).val();
console.log(id);
});
С недавних пор стало возможным к элементами добавлять произвольный data-атрибуты.
Эту возможность нам предоставил HTML5. Убедитесь, что Ваш браузер поддерживает HTML5.
Добавить к кнопке data-атрибут data-row-id со значением равным индексу строки. Этот
атрибут извлекается в обработчике и автор вопроса может воспользоваться так полюбившейся
ему функцией eq, не утруждая себя вычислением индекса строки.
Комментариев нет:
Отправить комментарий