Jquery 如何在数据表中插入TD

Jquery 如何在数据表中插入TD,jquery,datatables,Jquery,Datatables,我花了一上午的时间在示例页面上,似乎看不出为什么这不起作用 其目的是使用ajax(当前是一个示例txt文件)填充表,并在每行中添加一列以允许编辑和删除。我已经尝试了下面代码的各种变体(已经进化到了丑陋的地步),但是我知道为什么它不起作用。没有任何类型的错误(在firebug或其他任何地方),它只是没有像代码“应该”那样添加列 jQuery(文档).ready(函数($){ $(函数(){ 表动作(); 函数initTable() { var myTable=$('#示例')。数据表({ “iDi

我花了一上午的时间在示例页面上,似乎看不出为什么这不起作用

其目的是使用ajax(当前是一个示例txt文件)填充表,并在每行中添加一列以允许编辑和删除。我已经尝试了下面代码的各种变体(已经进化到了丑陋的地步),但是我知道为什么它不起作用。没有任何类型的错误(在firebug或其他任何地方),它只是没有像代码“应该”那样添加列

jQuery(文档).ready(函数($){
$(函数(){
表动作();
函数initTable()
{
var myTable=$('#示例')。数据表({
“iDisplayLength”:10,
“bJQueryUI”:没错,
“sPaginationType”:“完整编号”,
“bProcessing”:正确,
“bStateSave”:false,
“sAjaxSource”:“datatables\u example\u arrays.txt”,
“阿伦提努”:[[10,15,25,-1],[10,15,25,“全部”],
“bRetrieve”:真的吗
} );
返回myTable;
}
函数tableActions()
{
var-oTable=initTable();
/*在表中插入带有图像的“编辑”列*/
var nCloneTh=document.createElement('th');
var nCloneTd=document.createElement('td');
nCloneTd.innerHTML='';
nCloneTd.className=“中心”;
$('#示例thead tr')。每个(函数(){
oTable.insertBefore(nCloneTh,this.childNodes[0]);
} );
$('#示例tbody tr')。每个(函数(){
oTable.insertBefore(nCloneTd.cloneNode(true),this.childNodes[0]);
} );
}
});
});
根据

你想要这个:

$('#example thead tr').each( function () {
    $(nCloneTh).insertBefore(this.childNodes[0]);
});
尽管更“jQuery”的方法可能是:

$('#example thead tr').prepend(nCloneTh); //untested but should work
编辑

好的,我在他的例子和你的例子中看到的唯一真正的区别是,他在初始化数据表之前附加了“行扩展器”td

我不确定您的JSON输入是什么样子的,但我就是这样做的(我会尽量让它更通用):


根据他们的例子,每个人都不需要克隆:@GDP:你说得对,我错过了那里的“克隆节点”电话,很抱歉。
$('#example thead tr').prepend(nCloneTh); //untested but should work
aoColumns: [{
    mDataProp: 'Id',
    sClass: 'center',
    bUseRendered: false,
    fnRender: function (o) {
        return '<img src="media/open.png" class="row-expander" alt="" />';
    }
}, {
    mDataProp: 'NoteCount',
    sClass: 'center',        
    bUseRendered: false,
    fnRender: function (o) {
        return String.format('<img src="media/blue/{0}.png" alt="" class="notes-count" />', o.aData.NoteCount);
    }
}, {
    mDataProp: 'Name',
    bUseRendered: false,
    fnRender: function (o) {
        return String.format('<a href="./MyObjHome.aspx?ID={1}">{0}</a>', o.aData.Name, o.aData.Id);
    }
}, // add more columns
]
[{
    Id: some-guid,
    Name: 'My Object Name',
    NoteCount: 4
}, {
    Id: some-guid-2,
    Name: 'My Second Name',
    NoteCount: 10
}]