Ajax排序服务器端,是iSortCol_0考虑隐藏列
Ajax sorting server-side, is iSortCol_0 considering hiddend columns?
我不知道这是否是一个bug,但我有一个带有以下选项的数据表+ajax:
"bServerSide": true,
"sAjaxSource": url,
"fnServerData": function (sSource, aoData, fnCallback) {
jQuery.ajax({
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": fnCallback
});
},
"sPaginationType": "bootstrap",
"aoColumns": [
{ "sName": "Id", "sType": 'numeric', "bVisible": false },
{ "sName": "PostingDate", "sType": 'Date' },
{ "sName": "Userid", "sType": 'string', "bVisible": false },
{ "sName": "DisplayName" },
{ "sName": "Description" },
{ "sName": "MainTag" },
{ "sName": "Tags" },
{ "sName": "HowMuch" }
]
我有一个表单,用户可以在其中添加行,当他们提交时,我通过ajax调用将数据添加到数据库中,然后调用:jQuery('#mydatatable').dataTable().fnReloadAjax();
当用户单击按"MainTag"列对表进行排序时,我的服务器端ajax收到:
iSortCol_0 4
iSortingCols 1
所有的bPortable_#都在那里,正确地从0到7(我有8列,如上所示。
现在我的问题是iSortCol_0是误导性的,因为列是隐藏的,如果我不知道哪些列隐藏在服务器上,我会误解iSortCol:0=4按错误的列排序。
我可以实现一种变通方法,将显示或隐藏的列的信息发送到数据表的外部,但我觉得要么我做错了什么,要么我错过了在文档中找到问题的答案。
我不认为有一种自动的方法可以知道这一点,我要做的是使用fnServerParams()
向服务器发送一个额外的参数(如本例所述),以通知服务器哪些列是隐藏的
"fnServerParams": function ( aoData ) {
aoData.push( { "name": "more_data", "value": "my_value" } );
}
相关文章:
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 显示5秒后隐藏潜水
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 浮动页脚栏-使用Bootstrap隐藏
- 在jquery中为显示/隐藏设置cookie
- 单击按钮后如何逐个调用分区,上一个分区将隐藏
- 从var向代码隐藏函数传递值
- Image赢得't隐藏在滚动jQuery上
- 具有rowGrouping的数据表无法隐藏列
- Jquery隐藏未触发
- JavaScript 检查隐藏字段中的值并将其设置为隐藏字段值
- 分部隐藏在jquery中不起作用
- 点击后隐藏潜水?(但如果Div是一面旗帜呢?)
- javascript.点击隐藏事件故障
- 禁用(而不是隐藏)浏览器滚动条
- PHP Javascript显示/隐藏按钮不工作
- 在mvc应用程序中,在回发时保留最初隐藏的文本框的隐藏或可见状态
- 如何通过溢出来判断元素被切断了多少像素:隐藏在父级上
- ng隐藏和ng显示无法正常工作