使用 ajax C 在数据表中删除#

Delete in data table with ajax C#

提问人:hbaa 提问时间:12/4/2021 更新时间:12/4/2021 访问量:159

问:

我想从我使用服务器端开发的数据表中删除数据。以下是我的 javascript 和控制器代码。我知道控制器不是很方便。我是阿贾克斯的新手。谢谢。

    <script>

        $(document).ready(function () {
            $("#veritablosu").DataTable({
                "ajax": {
                    "url": "/Home/GetList",
                    "type": "POST",
                    "datatype": "json"
                },
                "columns": [
                    { "data": "PersonelId", "name": "PersonelId" },
                    { "data": "PersonelAd", "name": "PersonelAd" },
                    { "data": "PersonelSoyad", "name": "PersonelSoyad" },
                    { "data": "PersonelEmail", "name": "PersonelEmail" },
                    { "data": "PersonelCep", "name": "PersonelCep" },

                    {
                        "data": "release_date", "orderable": true, "render": function (data, type, row) {
                            return '<button class="btn btn-primary" data-toggle="modal"  data-target="#myModal">Update</button>'
                        }
                    },

                    {
                        "data": null,
                        render: function (data, type, row) {
                            return '<button type="button" class="btn btn-danger delete-btn">Delete</button>';
                        }
                    }
                ],


                "serverSide": "true",
                "order": [0, "asc"],
                "language": {
                    "url": "//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Turkish.json"
                }

            });
        });

        $(document).on('click', '.delete-btn', function (event) {
            const id = event.currentTarget).data('id');
        });

    public ActionResult PersonelSil(int id)
    {            
        DBModel db = new DBModel();
        var prs = db.Personel.Find(id);
        db.Personel.Remove(prs);
        return RedirectToAction("Index");
    }

  

此外,我无法将modal(popup)分配给更新按钮。
我在 https://www.codeply.com/go/YV9eFnJXst 网站上做了我想要的东西,但不幸的是,当我适应自己时,屏幕没有出现。 可能是版本错误吗?我的链接如下。

<link href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.1/semantic.min.css" rel="stylesheet" />
<link href="https://cdn.datatables.net/1.11.3/css/dataTables.semanticui.min.css" rel="stylesheet" />



<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.2/css/bootstrap.css" rel="stylesheet" />
<link href="https://cdn.datatables.net/1.11.3/css/dataTables.bootstrap4.min.css" rel="stylesheet" />
<link href="https://cdn.datatables.net/responsive/2.2.9/css/responsive.bootstrap4.min.css" rel="stylesheet" />

@section scripts{
    <script src="//cdn.datatables.net/1.11.3/js/jquery.dataTables.min.js"></script>
    <script src="https://cdn.datatables.net/1.11.3/js/dataTables.semanticui.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.3.1/semantic.min.js"></script>




    <script src="https://code.jquery.com/jquery-3.5.1.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js|https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.2/js/bootstrap.min.js"></script>
    <script src="https://cdn.datatables.net/1.11.3/js/jquery.dataTables.min.js"></script>
    <script src="https://cdn.datatables.net/1.11.3/js/dataTables.bootstrap4.min.js"></script>
    <script src="https://cdn.datatables.net/responsive/2.2.9/js/dataTables.responsive.min.js"></script>
    <script src="https://cdn.datatables.net/responsive/2.2.9/js/responsive.bootstrap4.min.js"></script>

我怎样才能学好这份工作,如果你能在这件事上帮助我,我会很高兴。

C# AJAX ASP.NET-MVC 数据表 服务器端

评论

0赞 Vivek Nuna 12/4/2021
您是否在浏览器控制台中看到错误?
0赞 Rahatur 12/5/2021
你需要问一个具体的问题。您是否收到错误或模式弹出窗口未出现,或者无法调用ajax进行删除?哪一个?
0赞 m.k.sharma 12/7/2021
嗨,请在将“columns”属性绑定到 datatable 时使用 id。表示您的 api (/Home/GetList) 应返回一列名称为“id”。您可以将 PersonelId 重命名为 id,也可以从后端/api 控制器返回表的标识列。实际上,在javascript DataTable的情况下,至少应该有一列具有名称ID和此id列的唯一值。希望这对你有所帮助。

答: 暂无答案