Javascript jQuery DataTables 1.10服务器端处理列

Javascript jQuery DataTables 1.10服务器端处理列,javascript,jquery,datatables,Javascript,Jquery,Datatables,在进行服务器端处理时,我很难保留列定义。我查看了网站上的文档,没有看到任何明显的可以尝试的内容。我尝试过在回调中使用AJAX选项,但也没有格式化它。下面是我的javascript当前的样子 $(此).dataTable({ sPaginationType:“完整编号”, bJQueryUI:是的, 处理:对, 观察家方面:是的, sAjaxSource:$(this).data('source'), 栏目:[ { 宽度:“10%” }, { 宽度:“20%” }, { 宽度:“70%” } ]

在进行服务器端处理时,我很难保留列定义。我查看了网站上的文档,没有看到任何明显的可以尝试的内容。我尝试过在回调中使用AJAX选项,但也没有格式化它。下面是我的javascript当前的样子


$(此).dataTable({
sPaginationType:“完整编号”,
bJQueryUI:是的,
处理:对,
观察家方面:是的,
sAjaxSource:$(this).data('source'),
栏目:[
{
宽度:“10%”
}, {
宽度:“20%”
}, {
宽度:“70%”
}
]
});

如果删除
sAjaxSource
bServerSide
节点,则会正确格式化列。为右列提供最大宽度。如果我把这些行放回去,它不会做任何格式化


任何帮助都会很好。

我终于明白这里发生了什么。如果您尝试像我在上面所做的那样传递数据表百分比,那么它似乎不起作用。这是因为在应用它们之前,它会将它们协调到像素。所以在我的例子中,它似乎不起作用,因为它会在像素用完后自动调整大小。解决方法是传入一个数字,只传入要调整大小的列。像这样的工作正如预期的那样


$(此).dataTable({
sPaginationType:“完整编号”,
bJQueryUI:是的,
处理:对,
观察家方面:是的,
sAjaxSource:$(this).data('source'),
栏目:[
无效的
无效的
{
宽度:“150”
}
]
});

这里的“this”是什么?这是元素。所以基本上是$('.my data table'),所以我假设您正在获取数据,但格式不干净?是的,数据恢复正常。我也可以对它进行排序/搜索。但是,我无法使列更改其宽度。