You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel for循环中如何获取删除表单ID绑定SweetAlert提交事件

解决方案

步骤1:修改视图表单,添加公共类

不需要依赖动态生成的表单ID绑定事件,给所有删除表单添加统一的类名即可,修改后的表单代码如下:

<form action="/student_delete/{{$students[$m]->id}}" id="{{$students[$m]->id}}" method="POST" class="delete-student-form">
    {{ csrf_field() }}
    <td><button type="submit" class="btn btn-danger remove-tr">-</button></td>
</form>

步骤2:修改JS绑定逻辑

直接通过公共类绑定所有删除表单的提交事件,事件触发时this会自动指向当前正在提交的表单,不需要额外获取表单ID:

<script>
    $(".delete-student-form").submit(function(e) {
        e.preventDefault();
        var form = this;
        Swal.fire({
            title: 'do you want to continue?',
            icon: 'question',
            iconHtml: '؟',
            confirmButtonText: 'yes',
            cancelButtonText: 'no',
            showCancelButton: true,
            showCloseButton: true
        }).then((result) => {
            if (result.isConfirmed) {
                form.submit();
            } else if(!result.isDenied) {
                console.log(result.isDenied);
            }
        });
    });
</script>

可选优化建议

  • 当前用的@for循环固定取前10条学生数据,若学生总数不足10会触发数组越界报错,建议替换为@foreach($students as $student)遍历所有学生数据,写法更简洁也更安全。
  • 表单ID如果没有其他场景使用可以直接删除,不会影响当前功能。

内容的提问来源于stack exchange,提问作者Jon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 12:27:03