datatable复选框获取选中多行数据 idDemo
先创建一个datatable
var table;
var num=0;
var url='${path}';
var cid;
var data;
$(function(){
table = $("#datatable1").DataTable({
"aaSorting": [[ 1, "cId","asc" ]],
"aoColumnDefs": [
{"orderable":false,"aTargets":[0,2,3,4,5,6,7,8,9,10,11]},
{//tr行内按钮
"targets":-1,
"bSortable": false,
render: function(data, type, row) {
var html ='<button type="button" style="padding: 0px;height:29px" onclick="removeAccount('+row.id+')" class="btn btn-primary">移除 </button>';
return html;
}
}
],
"keys":true,
"bProcessing" : true,
"sAjaxSource" : '${path}/chargeDataCustomer/waterChargeDataGrid2',
"serverSide": true,
"bPaginate" : true,
"scrollX": true,
"autoWidth":true,
"scrollY": 520,
"scrollCollapse": true,
"jQueryUI": true,
"bLengthChange" : true,
"bAutoWidth" : true,
"searching":false,
"fnServerData": function(sSource, aoData, fnCallback){
$.ajax( {
'type' : 'post',
"url": sSource,
"dataType": "json",
"data": {
"aodata" : JSON.stringify(aoData),
},
"success": function(resp) {
fnCallback(resp);
}
});
},
"fnServerParams": function (aoData) { //查询条件
aoData.push(
{"name": "num", "value":num},{"name": "name", "value":$("#name").val()}
);
},
"sAjaxDataProp" : "aData",
"aoColumns" : [{
"mDataProp" : "id",
"sClass" : "center",
"mRender" : function(data, type, full){
return "<label><input type='checkbox' name='chec' class='ace' /><span class='lbl'></span></label>"
}
},
{"mDataProp" : "cId"},
{"mDataProp" : "cname"},
{"mDataProp" : "careaID",
"mRender" : function(data, type, full) {
if(value == 1){
return '已作废';
} else{
return '未作废';
}
}
},
{"mDataProp" : "ramountCount"},
{"mDataProp" : "wlateAmount"},
{"mDataProp" : "ryearMonth"},
{"mDataProp" : "rlast"},
{"mDataProp" : "rnow"},
{"mDataProp" : "enow"},
{"mDataProp" : "rcount"},
{"mDataProp" : "rchargeCount"}
],
"columnDefs" : [{
"targets" : 15,//操作按钮目标列
"data" : null,
"render" : function(data, type,row) {
var id = '"' + row.id + '"';
var html = ""
return html;
}
}],
"oLanguage" : {
"sProcessing" : "处理中...",
"sZeroRecords" : "没有匹配结果",
"sInfo" : "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
"sInfoEmpty" : "显示第 0 至 0 条结果,共 0 条",
"sInfoFiltered" : "(由 _MAX_ 项结果过滤)",
"sLengthMenu" : "显示 _MENU_ 项结果",
"sInfoPostFix" : "",
"sSearch" : "搜索:",
"sUrl" : "",
"sEmptyTable" : "表中数据为空",
"sLoadingRecords" : "载入中...",
"sInfoThousands" : ",",
"oPaginate" : {
"sFirst" : "首页",
"sPrevious" : "上页",
"sNext" : "下页",
"sLast" : "末页"
},
"oAria" : {
"sSortAscending" : ": 以升序排列此列",
"sSortDescending" : ": 以降序排列此列"
}
}
});
});
然后根据name去遍历所有的复选框,获取checkbox所在行的顺序,然后根据id获取所在行的tr元素中的td元素判断你要的值是第几个td即可;
var C_ID = '';
//根据name去遍历所有的复选框
$("input[name='chec']:checked").each(function() {
// 获取checkbox所在行的顺序
n = $(this).parents("tr").index() + 1;
//根据id获取所在行的tr元素中的td元素判断你要的值是第几个td;
C_ID=$("table#datatable1").find("tr:eq(" + n + ")").find("td:eq(1)").text();
});