简体   繁体   English

如何从所选行中获取数据,数据表

[英]How to get data from selected row, Datatables

ok, finally i made though to get id show in datatables but not visible on grid. 好的,最后我做出了让ID显示在数据表中但在网格中不可见的显示。

i want to get the id, throught jquery selector or any other good way if possible. 我想获得ID,通过jquery选择器或任何其他好的方法(如果可能)。

Here is the Output HTML 这是输出HTML

<table class="table table-bordered table-condensed table-hover table-striped dataTable no-footer" id="ManageForms" role="grid" aria-describedby="ManageForms_info" style="width: 1618px;">
                        <thead>
                        <tr role="row"><th class="ui-state-default sorting" tabindex="0" aria-controls="ManageForms" rowspan="1" colspan="1" style="width: 351px;" aria-label="Form Name: activate to sort column ascending">Form Name</th><th class="ui-state-default sorting" tabindex="0" aria-controls="ManageForms" rowspan="1" colspan="1" style="width: 324px;" aria-label="Form Path: activate to sort column ascending">Form Path</th><th class="ui-state-default sorting" tabindex="0" aria-controls="ManageForms" rowspan="1" colspan="1" style="width: 535px;" aria-label="Form CI Path: activate to sort column ascending">Form CI Path</th><th class="ui-state-default sorting" tabindex="0" aria-controls="ManageForms" rowspan="1" colspan="1" style="width: 258px;" aria-label="Actions: activate to sort column ascending">Actions</th></tr>
                        </thead>
<tbody><tr role="row" class="odd" data-id="1"><td>Dashboard</td><td>#</td><td>admin/dashboard/System</td><td><a class="editBtnFunc" data-toggle="modal" href="#editBtnModal"><i class="fa fa-pencil fa-fw fa-2x" style="color: #666666"></i></a><a id="deleteBtn" href="#"><i class="fa fa-times fa-fw fa-2x" style="color: #ff0000"></i></a></td></tr><tr role="row" class="even" data-id="2"><td>Dashboard</td><td>#</td><td>admin/dashboard/Users</td><td><a class="editBtnFunc" data-toggle="modal" href="#editBtnModal"><i class="fa fa-pencil fa-fw fa-2x" style="color: #666666"></i></a><a id="deleteBtn" href="#"><i class="fa fa-times fa-fw fa-2x" style="color: #ff0000"></i></a></td></tr></tbody>
                        </table>

Just need to get the data-id from the tr . 只需从tr获取data-id

i tried this.closest('tr') but got error. 我尝试了this.closest('tr')但是出错了。

any suggestions.. 有什么建议么..

Here is the script. 这是脚本。

<script>
        $(document).ready(function() {
            var oTable =  $('#ManageForms').dataTable({
                 "aoColumns": [
                     /* ID */   {
                         "bVisible":    false,
                         "bSortable":   false
                     },
                     /* Form Name */  null,
                     /* Form Path */  null,
                     /* Form CI Path */  null,
                     /* Actions */  null
                 ],

                "bServerSide":true,
                "bProcessing":true,
                "bJQueryUI": true,
                "sPaginationType": "full_numbers",
                //"bFilter":true,
                //"sServerMethod": "POST",
                "sAjaxSource": "{{base_url()}}admin/configurations/listForms_DT/",
                "iDisplayLength": 2,
                "aLengthMenu": [[2, 25, 50, -1], [2, 25, 50, "All"]],
                /*"sEcho": 1,
                "columns":[
                    {data:"FormName"},
                    {data:"FormPath"},
                    {data:"FormCIPath"},
                    { "data": null,
                        "defaultContent": "<a href='#editBtnModal' class='editBtnFunc' ><i style='color: #666666' class='fa fa-pencil fa-fw fa-2x'></i></a><a href='#' id='deleteBtn'><i style='color: #ff0000' class='fa fa-times fa-fw fa-2x'></i></a>",
                        "targets": -1
                    }
                ],*/
                'fnServerData'   : function(sSource, aoData, fnCallback){
                    $.ajax ({
                        'dataType': 'json',
                        'type'    : 'POST',
                        'url'     : sSource,
                        'data'    : aoData,
                        'success' : fnCallback
                    }); //end of ajax
                },
                'fnRowCallback': function(nRow, aData, iDisplayIndex, iDisplayIndexFull) {
                    $(nRow).attr("data-id",aData[0]);
                    return nRow;
                }
            });

            //Edit Button on Modal Window
            $('#ManageForms').on('click', '.editBtnFunc', function(e){
                e.preventDefault();
            var FormID = $(this).find('data-item').value();
            console.log(FormID);
            });
            //Edit Button
        } );


    </script>

我希望这对您有用:

$(this).closest('tr').attr('data-id');

您可以使用jquery $('尝试一次。 在这里使用您的tr类名 ').attr('data-id')

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

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