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