Как получить значения из нескольких элементов с одинаковым именем класса, используя jquery - PullRequest
0 голосов
/ 28 октября 2019

Я распечатываю таблицу с циклом foreach, используя, и каждая строка будет иметь форму с некоторыми скрытыми входными данными и кнопками отправки, как это

<form>
    <input type="hidden" value="<?php echo $item['name'] ?>" class="get_name">
    <input type="hidden" value="<?php echo $item['email'] ?>" class="get_email">
    <input type="hidden" value="<?php echo $item['address'] ?>" class="get_address">
    <input type="hidden" value="<?php echo $item['birthday'] ?>" class="get_birthday">
    <button type="submit" class="Add">Add</button>
</form>

Что я хочу спросить здесь, это как получитьзначение в строке, когда я нажимаю кнопку отправки в этой строке. Я использовал $('.classname').val(), и единственный результат, который я получил, был значением первой строки в таблице.

Ответы [ 2 ]

2 голосов
/ 28 октября 2019

Вы, вероятно, используете val(), который работает как задумано:

Get the current value of the first element....

Если вы просматриваете свои элементы с помощью .each(), вы можете получить значения всехэлементы вроде этого:

$("input[type=hidden]").each(function() {
 console.log($(this).val())
}

Без обид, но этот вопрос довольно тривиален и требует только некоторых базовых знаний jQuery или того, как искать в jQuery docs . Вместо того, чтобы идти прямо к вашему решению, я бы порекомендовал вам взять введение jQuery, подобное этому, чтобы понять, как обходить DOM и извлекать данные с помощью jQuery:

https://www.tutorialspoint.com/jquery/index.htm

1 голос
/ 28 октября 2019

Я не уверен, что четко понимаю, чего вы пытаетесь достичь, но способ получить все значения подряд будет следующим:

var row = {};
$('input[type=hidden]').each(function () {
  row[$(this).attr('class')] = $(this).val();
});
console.log(row);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form>
    <input type="hidden" value="<?php echo $item['name'] ?>" class="get_name">
    <input type="hidden" value="<?php echo $item['email'] ?>" class="get_email">
    <input type="hidden" value="<?php echo $item['address'] ?>" class="get_address">
    <input type="hidden" value="<?php echo $item['birthday'] ?>" class="get_birthday">
    <button type="submit" class="Add">Add</button>
</form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...