編輯TableTools.js。
查找_fnGetDataTablesData
和裏面更改此:
if (oConfig.bHeader) {
aRow = [];
for (i = 0, iLen = dt.aoColumns.length; i < iLen; i++) {
if (aColumnsInc[i]) {
sLoopData = dt.aoColumns[i].sTitle.replace(/\n/g, " ")
.replace(/<.*?>/g, "")
.replace(/^\s+|\s+$/g, "");
sLoopData = this._fnHtmlDecode(sLoopData);
aRow.push(this._fnBoundData(sLoopData, oConfig.sFieldBoundary, regex));
}
}
aData.push(aRow.join(oConfig.sFieldSeperator));
}
這樣:
if (oConfig.bHeader) {
//another loop
for (i = 0, rowCount = dt.nTHead.rows.length; i < rowCount; i++) {
aRow = []; //clear row data
for (j = 0, iLen = dt.aoColumns.length; j < iLen; j++) {
if (aColumnsInc[j] && dt.nTHead.rows[i].children[j] !== null) {
sLoopData = dt.nTHead.rows[i].children[j].innerHTML.replace(/\n/g, " ")
.replace(/<.*?>/g, "")
.replace(/^\s+|\s+$/g, "");
sLoopData = this._fnHtmlDecode(sLoopData);
aRow.push(this._fnBoundData(sLoopData, oConfig.sFieldBoundary, regex));
} else {
aRow.push(this._fnBoundData("", oConfig.sFieldBoundary, regex)); //I'm not shure of this!!
}
}
aData.push(aRow.join(oConfig.sFieldSeperator));
}
}
我現在不能測試此roght,那麼試試這個。
當我從Allan獲得更好的解決方案時,我會更新我的答案。
同樣的事情一切發生轉換當你有多行頁腳時。我寫信給艾倫(DataTables的創造者)詢問這些功能。我會讓你知道什麼時候會支持:) – Misiu