1
我正在使用DataTables创建表。我初始化表之后,我想改变一些控制如何在一列被渲染,像这样设置:DataTables mRender“对象不是函数”错误
var st = mytable.dataTable().fnSettings();
$.extend(st.aoColumns[2], {
"mRender": function (val, type, row) {
return "xxx";
}
});
但是当我加载页面时,我得到: “对象不是一个函数内部DataTables.js:181(具有下文标记为“是这样的错误行”):
/* Cache the data get and set functions for speed */
var mRender = oCol.mRender ? _fnGetObjectDataFn(oCol.mRender) : null;
var mData = _fnGetObjectDataFn(oCol.mData);
oCol.fnGetData = function (oData, sSpecific) {
var innerData = mData(oData, sSpecific);
if (oCol.mRender && (sSpecific && sSpecific !== '')) {
return mRender(innerData, sSpecific, oData); <== this is the error line
}
return innerData;
};
好像一些缓存机制假设mRender值初始化后,也不会改变,但实际上数据表允许外部设置操作通过fnSettings方法明确证明它是用于“外部操纵”的。
有关如何解决此问题的任何想法?