【问题标题】:Show data name when confirm delete sweetalert确认删除 sweetalert 时显示数据名称
【发布时间】:2021-11-03 11:40:10
【问题描述】:

我尝试使用 sweetalert 自定义确认删除,但尝试显示已删除数据名称时出现此问题

这是删除表格:

    <button type="submit" onclick="deleteCategory('{{ $categories->id }}')" class="dropdown-item text-danger" href="#">
      <i class='bx bxs-trash-alt' ></i> Delete</button>
         <form action="{{ route('categories.destroy', $categories->id) }}" method="post"
             id="DeleteCategory{{ $categories->id }}">
             @csrf
             @method('delete')
         </form>

这是我的代码:

<script>
        function deleteCategory(id) {
            var name = $(this).data("name");
            var content = document.createElement('div');
            content.innerHTML = 'Menghapus kategori <strong>'+ name + '</strong> akan menghapus seluruh kategori didalamnya.';
            Swal.fire({
                title: 'Apakah kamu yakin?',
                html: content,
                icon: 'warning',
                showCancelButton: true,
                confirmButtonColor: '#3085d6',
                cancelButtonColor: '#d33',
                confirmButtonText: 'Yakin, hapus kategori',
                cancelButtonText: 'Batalkan'
            })
            .then((result) => {
                if (result.isConfirmed) {
                    Swal.fire({
                        title: "Sedang menghapus Layanan",
                        showConfirmButton: false,
                        timer: 2300,
                        timerProgressBar: true,
                        onOpen: () => {
                            document.getElementById(`DeleteService${id}`).submit();
                            Swal.fire(
                            'Terhapus!',
                            'Category berhasil dihapus',
                            'success'
                            )
                        }
                    });
                }
            })
        }
    </script>

但它总是像这样未定义:

删除功能工作正常,但我的问题只是未定义的事情

【问题讨论】:

  • 如何/从哪里拨打deleteService(id)。你能分享那个代码吗?
  • 我编辑了我的问题 :)
  • data-name 属性在哪里?
  • 你忘了在按钮上提到data-name="{{$categories-&gt;name}}"

标签: javascript jquery laravel-blade sweetalert2


【解决方案1】:

假设$categories-&gt;name 持有类别名称。

<button type="submit" onclick= "deleteCategory('{{$categories->id}}','{{$categories->name}}')" class="dropdown-item text-danger" href="#">
//
</button>

function deleteCategory(id, name) {
//
}

或者

<button type="submit" onclick="deleteCategory(this)" data-id="{{$categories->id}}" data-name="{{$categories->name}}" class="dropdown-item text-danger" href="#">
//
</button>

function deleteCategory(self) {
    var id = self.getAttribute("data-id");
    var name = self.getAttribute("data-name");
}

【讨论】:

  • 非常感谢您的回答
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-25
  • 2022-08-14
  • 1970-01-01
  • 2016-02-06
相关资源
最近更新 更多