Как получить значения кнопок внутри foreach, используя jquery и codeigniter? - PullRequest
0 голосов
/ 23 января 2019

На мой взгляд, у меня есть цикл foreach, как показано ниже

<?php foreach($wishes as $wish) { ?>
    <input id="delete" type="button" value="<?= $wish->id ?>">
<?php } ?>

значение кнопки будет отличаться в каждой кнопке

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

что я сделал не так

$(document).ready(function() {

    $("#delete").click(function(event) {
        event.preventDefault();

        var id = $("#delete").val();

        console.log('delete');
        console.log(id);

    });

});

Ответы [ 3 ]

0 голосов
/ 23 января 2019

добавить в ваш класс кода для событий

<?php foreach($wishes as $wish) { ?>
    <input id="<?= $wish->id ?>" class="action" type="button" >
<?php } ?>

$wish->id -> идентификатор должен быть уникальным, и сервер должен предоставить это

$(document).ready(function() {

    $(".action").click(function(event) {
        event.preventDefault();

        var id = event.target.id;

        console.log('delete');
        console.log(id);

    });

});
0 голосов
/ 23 января 2019
<?php foreach($wishes as $wish) { ?>
   <input class="delete" type="button" value="<?= $wish->id ?>">
<?php } ?>

Метод 1

Использование класса вместо идентификатора для события щелчка

$(document).ready(function() {

  $(".delete").click(function() {

      var IdValue = $(this).val();
      alert(IdValue);

  });

});

Метод 2

Функцию можно вызвать нажатием кнопки onclick="function_name()" и передать идентификатор в качестве параметра

<?php foreach($wishes as $wish) { ?>
   <input class="delete" type="button" value="<?= $wish->id ?>" onclick="GetId(<?= $wish->id ?>)" >
<?php } ?>

function GetId(IdValue){
    alert(IdValue)
}
0 голосов
/ 23 января 2019

Используйте классы вместо идентификаторов.Потому что идентификатор должен быть уникальным.Поскольку ваши значения идентификатора являются динамическими, вы можете прослушивать событие нажатия кнопки, используя класс кнопки.

<?php foreach($wishes as $wish) { ?>
   <input class="delete" type="button" value="<?= $wish->id ?>">
<?php } ?>

$(document).ready(function() {

  $(".delete").click(function(event) {
      event.preventDefault();

      var id = $(this).val();
      console.log(id);

  });

});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...