如何在单击按钮时将每个记录的ID传递给模式

时间:2019-03-18 07:06:25

标签: php

在以下代码中,我正在显示数据库中的表,并为每个记录提供一个编辑选项/按钮。当单击编辑按钮时,将显示该记录的详细信息的模态,用户可以在其中编辑数据并保存相同的数据。因此,我试图将按钮单击时该记录的ID发送给模态。但我面临的问题是仅发送第一条记录的ID。在每种情况下,我单击哪个按钮时,模态只显示第一个记录的数据。

<div class="carousel-item active" style="background-image: url('{{ Voyager::Image($banner[0]->banner_image) }}')">

3 个答案:

答案 0 :(得分:3)

您可以执行以下操作:

$(".actionEdit").on("click", function () {
        var uniqueId = $(this).attr("data-id");
        $.ajax({
            url: "path",
            type: 'POST',
            data: { uniqueId: uniqueId },
            success: function (result) {
                 //do something with result
                 $('#update').modal('show');  //open the modal window
            },
            error: function () { alert("Whooaaa! Something went wrong.."); }
        });

    });

为“ actionEdit”提供一个类,并将click事件绑定到该类。 然后单击即可获取数据ID并进行ajax调用,以获取所有用于编辑/更新的值并打开模式窗口。

答案 1 :(得分:1)

首先:在数据库表中使用主键

第二:使用隐藏的输入并将主键保存在其中并发送:

<form ... >
<input name="primary_key"  type="hidden" value="<?php echo ($result->PRIMARY_KEY_COLUMN); ?>">
...
..
.
<submit.....>
</form>

答案 2 :(得分:0)

或者您可以调用以id为参数的函数

function load_details(data_id){
        $.ajax({
            url: "path",
            type: 'POST',
            data: { data_id: data_id},
            success: function (result) {
                 //do something with result
                 $('#myModal').modal('show');  //open the modal window
            },
            error: function () { alert("Oops..! Something went wrong.."); }
        });

    }