如題
想獲取操作 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); }