C# 隐藏字段id未正确显示在第二页中

C# 隐藏字段id未正确显示在第二页中,c#,jquery,asp.net-mvc,datatables,C#,Jquery,Asp.net Mvc,Datatables,我是jQuery dataTable的初学者,最后一天我在我的网站上实现了dataTable 1.10 我尝试在所选行的警报窗口中弹出id字段 第一页正常工作,但当我转到第二页时,我单击 行id为11。但弹出窗口显示单击行的id为1 所有页面都显示此错误,它仅在第一页中正常工作 请看下面我的代码 脚本 $(document).ready(function () { //$("#tblProvider").dataTable().destroy(); $("#tblPro

我是jQuery dataTable的初学者,最后一天我在我的网站上实现了dataTable 1.10

我尝试在所选行的警报窗口中弹出id字段

第一页正常工作,但当我转到第二页时,我单击

行id为11。但弹出窗口显示单击行的id为1

所有页面都显示此错误,它仅在第一页中正常工作

请看下面我的代码

脚本

$(document).ready(function () {

    //$("#tblProvider").dataTable().destroy();

    $("#tblProvider").dataTable({
        bProcessing: true,
        bPaginate: true,
        bLengthChange: false,
        bSort: true,
        sAjaxSource: '@Url.Action("JsonGetAllTariffPosition", "Admin")',
        aoColumns: [
             { sTitle: "Id", bVisible: true, bSortable: false },
             { sTitle: "Number", bSortable: false },
             {
                 sTitle: "Action",
                 bSortable: false,
                 mRender: function (o) { return '<i class="ui-tooltip fa fa-pencil" data-toggle="modal" style="font-size: 22px;" data-original-title="Edit"></i><i class="ui-tooltip fa fa-trash-o" style="font-size: 22px;" data-original-title="Delete"></i>'; }
             }
        ],
    });

    $("#tblProvider").on('click', 'tr td i[class="ui-tooltip fa fa-pencil"]', function () {

        var row_index = $(this).closest('td').parent()[0].sectionRowIndex //you need to determine this how ever you like
        var table = $('#tblProvider').DataTable()
        var column_data = table.row(row_index).data()[0];

        alert(column_data);
    });
});
$(文档).ready(函数(){
//$(“#tblProvider”).dataTable().destroy();
$(“#tblProvider”).dataTable({
b处理:对,
B:是的,
bLengthChange:false,
是的,
sAjaxSource:'@Url.Action(“jsongetalltarifffosition”,“Admin”),
AO列:[
{sTitle:“Id”,bVisible:true,bSortable:false},
{sTitle:“Number”,b排序:false},
{
斯泰尔:“行动”,
可移植:错误,
mRender:函数(o){返回“”;}
}
],
});
$(“#tblProvider”)。在('click'、'tr td i[class=“ui tooltip fa fa pencil”]”上,函数(){
var row_index=$(this).closest('td').parent()[0].sectionRowIndex//您需要根据自己的喜好确定此值
变量表=$('#tblProvider')。数据表()
var column_data=table.row(row_index).data()[0];
警报(列_数据);
});
});
Html

<table id="tblProvider"
                                class="table table-striped table-bordered table-hover table-highlight table-checkable"
                                data-search="true"
                                data-paginate="true">
                                <thead>
                                    <tr>
                                        <th>Id</th>
                                        <th>Tariff Position</th>
                                        @*<th>General Tax</th>
                                        <th>Consumption Tax</th>*@
                                        <th>Action</th>
                                    </tr>
                                </thead>
                                <tbody>
                                </tbody>
                            </table>

身份证件
关税地位
@*一般税
消费税*@
行动

将单击处理程序中的代码替换为

var node =  $(this).closest('tr')
var table = $('#tblProvider').DataTable()
var column_data = table.row(node).data()[0];

是否已在viewsource中检查隐藏行是否存在。如果不是,那么为什么不读取第一列文本而不是索引呢?我相信问题的发生是因为您在表id中声明了事件on,当数据表jquery刷新时,该表被刷新。尝试更改具有隐藏字段的元素的事件。希望有用!