我想用jquery dataTables来展示一些东西.
当我只将一个dataTable放在一个页面中,然后我再添加一个,但它们占据了几乎相同的位置,其中一个不能正常工作时,它运行良好.
你知道怎么处理吗?
我正在尝试在ajax调用上出现错误(即服务器没有响应)时有一个自定义错误处理程序,用于将新数据加载到我的数据表中.
$table.DataTable().ajax.url(ajaxURL).load();
Run Code Online (Sandbox Code Playgroud)
默认情况下,它显示一个警报,我可以通过以下设置更改它以引发javascript错误:
$.fn.dataTable.ext.errMode = 'throw';
Run Code Online (Sandbox Code Playgroud)
但有了这个,我只是在控制台上记录了一个错误,我不知道如何捕获抛出的错误,所以我仍然无法提供自己的错误处理程序.
文档中还列出了一个错误事件,但似乎没有触发,因此以下内容从不发出警报.
$table.on( 'error', function () { alert( 'error' );} );
Run Code Online (Sandbox Code Playgroud)
到目前为止,我发现的其他所有内容都是遗留代码,例如设置fnServerData,我希望避免进入.
是否有方法在1.10 API中设置ajax错误回调?
我正在使用jquery插件D ataTables来构建漂亮的表
var table = $('#example').DataTable({
"data": source
});
Run Code Online (Sandbox Code Playgroud)
我想为表中的所有行创建一个
不幸的是,这种方式可能已过时,并且不适用于新版本(它会启动错误)
$(table.fnGetNodes()).each(function () {
});
Run Code Online (Sandbox Code Playgroud)
这种方式仅适用于可见行(10个第一行,因为其他行是分页的)
table.each( function ( value, index ) {
console.log( 'Data in index: '+index+' is: '+value );
} );
Run Code Online (Sandbox Code Playgroud)
你知道如何循环到所有行吗?
我正在使用jQuery DataTables并执行服务器端数据.我正试图在ajax调用返回时调用一个函数.我尝试插入这个调用我的函数和原始函数的fnCallback2,但jQuery只是抛出一个错误(并没有告诉我错误是什么)并跳过了.
$("#brands").dataTable( {
"bServerSide" : true,
"sAjaxSource" : "ajax.php",
"fnServerData" : function(sSource, aoData, fnCallback) {
fnCallback2 = function(a,b,c){
fnCallback.call(a,b,c);
update_editable();
};
$.ajax( {
"dataType" : 'json',
"type" : "POST",
"url" : sSource,
"data" : aoData,
"success" : fnCallback2
});}});
Run Code Online (Sandbox Code Playgroud)
我也尝试添加fnInitComplete参数,但这只是第一次被调用,而不是在后续页面之后.
"fnInitComplete": function(){
update_editable();
},
Run Code Online (Sandbox Code Playgroud)
如何在ajax请求之后正确调用我的代码,以便调用原始回调?
我在我的DataTable中应用了一个按钮,点击该按钮,过滤数据表,只显示点击的行.
表初始化是:
var oDatatable = $("#tblDataTable").DataTable({
dom: '<"top"CRTl><"clear">rt<"bottom"ip><"clear">',
columns: [
{ data: 'Message' },
{ data: 'MessageId' },
{ data: null, "defaultContent": "<button id=\"tblRowData\">Click</button>"}
],
"columnDefs": [
{ "visible": false, "targets": 0 }
]
});
Run Code Online (Sandbox Code Playgroud)
我的点击事件是:
$('#tblDataTable tbody').on('click', 'button', function (event) {
var data = oDataTable.row($(this).parents('tr')).data();
oDataTable
.columns(8)
.search(data['MessageId'])
.draw();
Run Code Online (Sandbox Code Playgroud)
这一切都很好,但现在我想重置过滤器,当页面上的任何其他操作执行.例如,更改日期时间选择器.
如何检查数据表是否应用了搜索过滤器,并将其删除(即在单击事件之前重置表格).
实际上我是jQuery datatables插件的新手.
我已使用此代码使用此方法将插件附加到我的表中.
$(document).ready(function()
$('#table_id').dataTable({
});
});
Run Code Online (Sandbox Code Playgroud)
现在我想要的是datatables提供了一个文本框,我们可以在其中输入我们的过滤字符串,结果将被过滤.
所以我想使用我现有的设计文本框来实现这一目的,我不想在UI中添加新的文本框.所以我经历了这个链接
http://datatables.net/examples/basic_init/dom.html
但我不理解.是否可以使用现有的文本框.请指教
在实现此数据表之前,请参阅我遇到的情况

现在当我应用这个数据表插件时,为搜索添加了一个新的文本框我不想要一个新的文本框我想让我现有的文本框实现搜索功能.
我有一个HTML表,我填写了来自AJAX jQuery调用的数据.这个表使用jQuery插件 - 数据表进行分页,排序等.
从下拉列表更改事件中调用jQuery调用
$("#Dropdownlist").on("change", function () {
$.ajax({
type: "POST",
url: "@Url.Action("Action", "Controller")",
//contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$.each(data, function (key, item) {
$("tbody").append("<tr><td>appending data here</td></tr>");
});
$('#table').dataTable().fnDestroy();
$('#table').dataTable({
"aoColumns": [
{ "bSortable": false },
null, null, null, null, null
]
});
}
})
});
Run Code Online (Sandbox Code Playgroud)
这个jQuery已被编辑以缩短它.这个jQuery工作得很好,它获取数据并将它们添加到新表行中,同时还更新数据表插件以使其适用于新数据.
问题是旧的数据仍然存在,我一直试图用各种各样的东西清理它
$("#tbodyID tr").detach();
$("#tbodyID tr").remove();
$("#tbodyID").empty();
$("#tbodyID").html("");
$("tbody").empty();
$("tbody").html("");
$('#table').dataTable().fnDraw(false)
Run Code Online (Sandbox Code Playgroud)
我把它们放在AJAX调用之前.但是没有一个工作,旧数据仍然存在,每次我调用AJAX调用时,它都会继续使用新数据重新填充它,而旧数据仍然存在.
有没有办法用jQuery或内置的数据表函数清除tbody?
如何在搜索框中输入值在数据表中.有没有办法在数据表的搜索框中输入值?
好的,所以我试图使用jQuery DataTable(DataTables.net)显示来自我的数据库的信息.我可以让它工作得很好,显示整个表'笔记',但我想只显示未读取的笔记.所以我需要以某种方式包含一个WHERE子句,但我不清楚最好的方法来解决这个问题.
这是我目前显示整个表格的方式:
// DB table to use
$table = 'Notes';
// Table's primary key
$primaryKey = 'CID';
// Array of database columns which should be read and sent back to DataTables.
// The `db` parameter represents the column name in the database, while the `dt`
// parameter represents the DataTables column identifier. In this case simple
// indexes
$columns = array(
array( 'db' => 'CID', 'dt' => 0 ),
array(
'db' => 'CID',
'dt' => 0,
'formatter' => function( …Run Code Online (Sandbox Code Playgroud)