Как получить значение типа ввода из динамической таблицы с помощью JQuery

Я работаю на сайте электронной коммерции.

Моя таблица получает значение из сессии.
Это выглядит как :
введите описание изображения здесь

На Проверять, выписываться Я хочу получить все значения таблицы.

я использовал JQuery за это.

Вот мой код:

<script>
$('#chhk').on('click',function(e) {
e.preventDefault();
alert('click');
var table = $("#tbl tbody");

table.find('tr').each(function (i, el) {
var $tds = $(this).find('td'),
product = $tds.eq(2).text(),
price = $tds.eq(3).text(),
quantity = $tds.eq(4).attr('value'),
total = $tds.eq(5).text();

alert('Row ' + (i + 1) + ':\nProduct: ' + product
+ '\nPrice: ' + price
+ '\nQuantity: ' + quantity
+ '\nTotal: ' + total);
});

});
</script>

Вот
‘#Chhk’ идентификатор кнопки оформления заказа

‘#Tbl’ это идентификатор моей таблицы

Я получаю пустое значение количество по этому сценарию как есть поле ввода

введите описание изображения здесь

Любая помощь будет оценена ..

0

Решение

Попробуйте заменить это:

                    quantity = $tds.eq(4).attr('value');

с:

                    quantity = $tds.eq(4).val();

Поскольку .attr (‘value’) дает значение в начале, а .val () дает текущее свойство.

Больше информации:
jQuery .val () vs .attr ("значение")

1

Другие решения

замени это

 quantity = $tds.eq(4).attr('value'),

с

quantity = $tds.eq(4).find("input").val(),
1

хорошо я попытался сделать это отдельно и получаю ожидаемый результат.

$('#chhk').on('click',function(e) {
e.preventDefault();
alert('click');
var table = $("#tbl tbody");

table.find('tr').each(function (i, el) {
var $tds = $(this).find('td'),
product = $tds.eq(2).text(),
price = $tds.eq(3).text(),
total = $tds.eq(5).text();
var qty = $(this).find('td input:first').val();

alert('Row ' + (i + 1) + ':\nProduct: ' + product
+ '\nPrice: ' + price
+ '\nTotal: ' + total
+'\n Qua:' + qty);
});

});

Имели дело количество по отдельности.

0
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector