如题
想获取操作 DataTables 获取选中行数据
案1、主要是利用 js getElementsByTagName 函数 然后对获取到的tr 进行操作 如下
function getCheckAllSum() { var sumAll = 0;
//获取 id 是 skuTrayInfo table 的 所有的 tr var trList = document.getElementById("skuTrayInfo").getElementsByTagName("tr"); for (var i = 0; i < trList.length; i++) {
//tr 的 第一个 td 放的是 checkbox 判断checkbox 是否选中 if (trList[i].firstElementChild.firstElementChild.checked) {
//trList[i].firstElementChild 当前 tr 的第一个 td
//nextElementSibling 是表示 下一个节点 即 下一个 td var qty = trList[i].firstElementChild.nextElementSibling.innerHTML.trim(); sumAll= sumAll + parseInt(qty); } } console.log(sumAll); }
案2、因为用了jQuery DataTables 插件 所以 查了下 DataTables 有没有带的可用的API 果然有一个 fnGetNodes 的函数可用
var tbl = $("#tblSkuTray").dataTable(); var trList = tbl.fnGetNodes(); for(i=0;i<trList.length;i++){ var trObj = trList[i];
//接下来就和 案1 的一样了 就只写个输出 不做实现了 console.log(trObj.firstElementChild.firstElementChild.checked); }