Tag: jquery datatables

在jquery数据表中渲染大型服务器端数据集

我正在使用带有少量插件的DataTables 1.9.4 (ColVis,ColReorderWithResize和ColumnFiltering)。 我用于服务器端通信的参数是: “bServerSide” “fnServerData” “sAjaxSource” 现在,假设我必须显示3000行,大约25列没有分页(“iDisplayLength”: – 1)。 json包含大约1MB的数据权重,服务器将其发送到数据表大约需要几秒钟。 问题是这些3000行的渲染需要几秒钟(大约5-10,这是不可接受的)。 在IE上,它可能需要更多,导致“脚本不响应”错误。 我希望我能以某种方式加快这个过程 – 即通过显示让我们说100行并在后台渲染其余部分。 有没有更好的办法? 我知道有一个Scroller插件 – Scroller ,但我需要所有可用于搜索的数据,所以滚动不是一个选项。

拆分数组/对象以过滤值

以下是我如何生成部件号列表(来自json响应): // Any given part could be used more than once. Only want each part # to show first occurance. $.each(data, function(key, val) { if ($.inArray(val.name, partArray) === -1) { partArray.push(val.name); } }); return partArray; 我正在使用jQuery DataTables来呈现我的零件清单。 我有3行从上面的循环中呈现如下: [“1”, “2”, “3”] // First Row [“4”, “5”, “6”] // Second Row [“7”, “8”, “9”] // Third […]

价值回归未定义

我使用jquery数据表在表上显示结果,然后将ID作为URL参数传递,我们能够向用户显示特定记录的详细信息。 到目前为止,这很好。 但是,我被要求传递一个名为user的第二个url参数,这会带来问题。 当我运行代码时,它不再显示详细信息页面。 在使用firebug查看代码后,我发现了一条错误消息: john is undefined 。 john.doe是显示在url上的值,看起来更像是这样的: http://mylink.com/viewDetails.php?ID=1235&userName=john.doe 我有什么想法我做错了吗? return “<a target='tab' data-tab-name='#RequestDetails' data-tab-index='2' href='https://stackoverflow.com/questions/24087258/value-is-coming-back-as-undefined/viewDetails.php?rID=" + oObj.aData["ID"] + "&userName=" + + “‘> ” + oObj.aData[“ID”] + ” “;

不同列数列表的未定义或空引用的aDataSort错误

我已经为固定列表的结果集集成了数据表,它工作正常。 目前面临的问题是,根据下拉列表的选择,我想用搜索结果加载不同的列表。 但是当我尝试这样做时,如果列列表/结果集为空,它将给出未定义或空引用的aDataSort错误错误。 那么有没有解决方案从datatable属性禁用“DataSort”属性? 我尝试过分配“aaSorting”:“null”/“aaSorting”:“undefined”/“aaSorting”:“[[]]”但它对我来说不起作用。 感谢您的帮助。

dataTables – 使用fnReloadAjax更新表之前处理div隐藏

我正在使用DataTables启用服务器端处理。 在使用fnReloadAjax()方法刷新表数据时,处理div显示,然后在请求完成后隐藏(表仍然显示旧数据),然后在大约2秒后,新数据出现在表中。 所以有一段时间似乎插件已经完成加载新数据,但它仍然显示旧数据。有没有办法保持处理div直到新数据被绘制在表中?

DataTables TypeError:… draw不是函数

我正在尝试使用自定义输入来搜索/过滤jQuery Datatables表。 我正在使用jquery 2.1.1和DataTables 1.10.4。 我的代码非常简单,并反映了API文档中的内容: var table = $(‘#pList’).DataTable({ “pageLength”: 25, “lengthChange”: false, “ajax”: ‘partsJSON.cfm’ }); $(‘#pdb-filter’).on( ‘keyup’, function () { console.log(table); table.search( this.value ).draw(); } ); 当我运行页面并在输入中输入条目时,我在控制台中获得以下内容: TypeError: table.search(…).draw is not a function 其次是: Object { context: Array[1], selector: Object, tables: O/q.extend/h/<(), table: O/q.extend/h/<(), draw: O/q.extend/h/<(), page: O/q.extend/h/<(), ajax: Object, rows: O/q.extend/h/<(), row: […]

在IE8浏览器中显示/隐藏列后,数据表标题高度增加

我们动态隐藏/显示数据表列(使用datatable插件以及Fixed Column.js插件) 隐藏列后,它将仅在IE8浏览器中增加表头高度。 这是我们用来隐藏的代码。 “index”是列索引。 //$datatable is datatable object if(some condition) { $datatable.fnSetColumnVis(index, false); } else { $datatable.fnSetColumnVis(index, true); } 这个问题似乎是FixedColumns.js(2.0.3版本)。 我们在数据表中使用FixedColumns。 在显示/隐藏数据表中的列之后,如何为所有情况保持相同的表头高度

仅在DataTables中基于第一列的下拉值过滤表数据

下面提到了数据表网站上提到的所有列的选择选项的function。 如何使其仅在第一列的下拉值上过滤表数据,并将选择下拉列表放在其他位置,而不是通常的标题部分。 例如,请参阅链接 initComplete: function () { var api = this.api(); api.column().indexes().flatten().each( function (i) { var column = api.column(i); var select = $(”).appendTo(‘$selectTriggerFilter’).on( ‘change’, function () { var val = $.fn.dataTable.util.escapeRegex($(this).val()); column.search( val ? ‘^’+val+’$’ : ”, true, false ).draw(); } ); column.data().unique().sort().each( function ( d, j ) { select.append( ”+d+” ) } ); } […]

jQuery DataTables问题:列和行不在一行中

我在左侧有一个x轴和y轴滚动和固定列。 我的问题是thead对tbody的位置和行的位置。 列和行不会完全显示在一行中,它们会稍微移位。 我试过这个: 使用CSS冻结表头时,表头和正文未正确对齐 jQuery Datatables标题与垂直滚动不对齐 固定列标题宽度与主体列宽不匹配 但它对我不起作用。 这是我的javascript: $(document).ready(function(){ var height = ($(window).innerHeight() – 180); var oTable = $(‘#tableOverview’).dataTable({ “oLanguage”: { “sProcessing”: “Bitte warten…”, “sLengthMenu”: “_MENU_ Einträge anzeigen”, “sZeroRecords”: “Keine Einträge vorhanden.”, “sInfo”: “_START_ bis _END_ von _TOTAL_ Einträgen”, “sInfoEmpty”: “0 bis 0 von 0 Einträgen”, “sInfoFiltered”: “(gefiltert von _MAX_ Einträgen)”, “sInfoPostFix”: “”, […]

jQuery的Google.load() – 不适用于DataTables.net

我有旧的谷歌图表API(旧的静态图像)的网页(这里是一个例子 ),我想将它移动到新的谷歌可视化图表API。 我还使用jQuery,jQuery UI,Google JS地图和DataTables.net(全部托管在Google和Microsoft CDN上): @import “/demo_table_jui.css”; @import “https://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/redmond/jquery-ui.css”; $(function() { // … $(“#comments”).dataTable( { “bJQueryUI”: true, “sPaginationType”: “full_numbers”, “aaSorting”: [[0, “desc”]] }); }); 所以我想尝试使用google.loader(); 而不是脚本标签: @import “/demo_table_jui.css”; @import “https://ajax.googleapis.com/ajax/libs/jqueryui/1/themes/redmond/jquery-ui.css”; google.load(“jquery”, “1”); google.load(“jqueryui”, “1”); google.load(“maps”, “3”, {other_params: “language=ru&sensor=false”}); google.setOnLoadCallback(function() { // … $(“#comments”).dataTable( { “bJQueryUI”: true, “sPaginationType”: “full_numbers”, “aaSorting”: [[0, “desc”]] }); }); 不幸的是,这不起作用(这里是一个示例页面 […]