簡體   English   中英

數據表上 href 的甜蜜警報

[英]Sweet alert for href on datatables

我正在嘗試為我的數據表添加軟刪除警告消息,請在此處輸入圖像描述

但是示例是針對按鈕的,我使用 h ref 鏈接訪問 controller 中的軟刪除 function

這是我用 yajra 制作的數據表

MailMessageDataTable.php

    public function dataTable($query)
{
    return datatables()
        ->eloquent($query)
        ->addColumn('action', function ($MailMessage) {
            return '<a href="' . route('MailMessage.show', $MailMessage->id) . '"class="btn btn-outline btn-primary btn-xs dim"
            data-toggle="tooltip" tittle="' . __('messages.index.show') . '"><i class="fa fa-eye"></i></a>'
                .($MailMessage->deleted_at ? '' :
               '<a href="' . route('MailMessage.edit', $MailMessage->id) . '"class="btn btn-outline btn-primary btn-xs dim"
            data-toggle="tooltip" tittle="' . __('messages.index.edit') . '"><i class="fa fa-edit"></i></a>')
                .'<a href="' . route('MailMessage.delete_message', $MailMessage->id) . '"class="btn btn-outline btn-primary btn-xs dim"
            data-toggle="tooltip" tittle="' . __('messages.index.delete') . '"><i class="fa fa-trash"></i></a>';
        });
}

最后一個 href 對使用軟刪除很重要

我已經按如下方式解決了。

我在路由之前添加了一個捕獲鏈接的數據遠程

                    .'<a href="" data-name="' . $MailMessage->id .'" data-remote="' . route('mail-message.destroy', $MailMessage->id) . '"
                    class="btn btn-outline btn-primary btn-xs dim btn-action" style="margin-left:2px" data-toggle="tooltip" title="' . __('messages.index.delete') . '">
                    <i class="fa fa-trash"></i>
                    </a>';

在視圖中我添加了腳本

 <script>
        $(function () {
            let taskTable = $('#task-table');

            taskTable.on('click', '.btn-action[data-remote]', function (e) {
                e.preventDefault();
                let url = $(this).data('remote');
                let name = $(this).data("name");
                Swal.fire({
                    title: $('#swal-title').val() + ' ' + name,
                    text: $('#swal-message').val(),
                    icon: "question",
                    showConfirmButton: true,
                    showCancelButton: true,
                }).then(function (value) {
                    if (value.value) {
                        axios.delete(url)
                            .then((response) => {
                                $('#task-table').DataTable().draw(false);
                                showAlert(response.data.message)
                            });
                    }
                })
            });
        });
    </script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM