有没有一种方法可以将按钮ID onClick发送到引导模式?

时间:2019-01-09 06:04:05

标签: javascript php bootstrap-4 laravel-5.7 adminlte

使用laravel,我有一个从数据库中获得的用户详细信息列表,每个记录的末尾都有“编辑和删除”按钮。当我单击删除按钮时,特定的记录将被删除,但是当我添加一个模式时,如单击删除按钮,将出现一个模型,但是将功能添加到模式的确认“是”按钮上比较棘手,因为无论我需要删除哪个用户,它都删除了第一条记录。单击模式按钮时如何删除被单击的用户?

我尝试为每个按钮分配当前行的ID。

    @foreach($admins as $admin)
        <tr>
            <td>{{$admin['id']}}</td>
            <td>{{$admin['name']}}</td>
            <td>{{$admin['email']}}</td>
            <td>
            <button type="button" class="btn btn-block btn-danger"  data- toggle="modal" data-target="#modal-danger" id="{{$admin['id']}}">Remove</button>
            </td>
        </tr>
    @endforeach

    <!-- The Button From Modal -->
    <button type="button" class="btn btn-outline">Remove</button>

3 个答案:

答案 0 :(得分:1)

创建一个全局变量以存储目标ID,并在单击目标行上的按钮时将其关联到目标ID

<button type="button" class="btn btn-block btn-danger"  data- toggle="modal" data-target="#modal-danger" id="{{$admin['id']}}" onClick=someFunction({{$admin['id']}})>Remove</button>
target_id=0
function someFunction(id) {
    target_id=id
}

然后在单击模型中的删除按钮并从中访问目标ID的全局变量时,使另一个函数触发

这是我做到的最佳方法。

答案 1 :(得分:0)

由于您使用的是jQuery,因此可以使用attribute方法来获取当前单击的用户ID并传递到URL:

您的HTML按钮类

  $(".my-btn").click(function(){
   var userID = $(this).attr("data-user");

   if (typeof userID !== typeof undefined && userID !== false) {

      if(userID.length > 0) {
          // There you go the user id of the clicked user
          console.log(userID);
      }

   }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<button type="button" class="my-btn" data-user="user_id_123">Remove</button>

对于与attr方法https://www.w3schools.com/jquery/html_attr.asp

有关的其他问题,建议您参考以下网址

答案 2 :(得分:0)

我用JS完成的。您可以使用TextBox.Attributes["value"] = "your password value"; 显示模态 因此,您可以在按钮上添加一个onClick事件,以填充隐藏的输入。

使模态出现的按钮:

$('#modal-danger').modal('show')

您的隐藏输入(页面中的某处):

<button type="button" class="btn btn-block btn-danger" onClick="showModal({{$admin['id']}})">Remove</button>

您的模式按钮:

<input type="hidden" id="id-to-remove" />

您的JS:

<button type="button" class="btn btn-outline" onclick="realRemove()">Remove</button>

这应该有效