繁体   English   中英

单击jQuery DataTable中的编辑按钮后,从数据库获取ID。

[英]Get the id from database after clicking on a edit button in jQuery DataTable

当我单击某一行的删除按钮时,我需要从数据库中获取该行的ID,以便一旦获得该ID即可将其发送到控制器以删除该行。

我正试图以这种方式做。

这是我的HTML表格。

<table id="tableClient" class="table table-bordered table-striped">
    <thead>
        <tr>
            <th>Delete</th>
            <th>Name</th>
            <th>Last Name</th>
            <th>RUC</th>
            <th>Phone</th>
            <th>Email</th>
        </tr>
    </thead>
    <tbody>                                                
    </tbody>
</table>

并使用jQuery DataTable我试图做到这一点:

var table = $('#tableClient').DataTable({
    "columnDefs": [{
        "width": "5%",
        "targets": [0]
    },
    {
        "className": "text-center custom-middle-align",
        "targets": [1, 2, 3, 4, 5]
    }, ],
    "language":
    {
        "processing": "<div class='overlay custom-loader-background'><i class='fa fa-cog fa-spin custom-loader-color'></i></div>"
    },
    "processing": true,
    "serverSide": true,
    "ajax":
    {
        "url": "/Mantenimiento/FiltrarClientesTablaAsync",
        "type": "POST",
        "dataType": "JSON",
    },
    "columns": [
    {
        bSortable: false,
        mRender: function (o) { return '<button type="button" onclick="delete(id);" class="btn btn-default delete"><span class="glyphicon glyphicon-remove" /></button>'; }
    },
    {"data": "Name"},
    {"data": "LastName"},
    {"data": "RucClient"},
    {"data": "Phone"},
    {"data": "Email"}
    ],
});

问题是,当我单击删除按钮时,我想调用onclick =“ delete(id);”。 事件,并将ID发送到该事件,该事件将删除该ID的行。 关于如何使用jQuery和MVC做到这一点的任何想法?

我能够解决我需要的东西。 我只需要添加带有数据库ID的名为data-id的数据属性,然后将其作为带有“ this”的引用传递给delete方法。

这是我的解决方案:

"columns": [
    {
        data: null,
        bSortable: false,
        render: function (data, type, row) { return '<button type="button" onclick="delete(this);" class="btn btn-default delete" data-id="' + data.id + '"><span class="glyphicon glyphicon-remove" /></button>'; }
    },
  ],

您可以使用此方法将值传递给您编写的delete()函数。

{
    "data": null,
    "className": "class1 class2",
    "orderable": false,
    "render": function (data, type, row) {
        return '<button type="button" onclick="delete(' + data.Id + ');" class="btn btn-default delete"><span class="glyphicon glyphicon-remove" /></button>'; 
        // where data.Id is the Id of the entry in the row
    }
},

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM