jQuery DataTables 和初始数据加载
Posted
技术标签:
【中文标题】jQuery DataTables 和初始数据加载【英文标题】:jQuery DataTables and Initial Data Load 【发布时间】:2011-11-18 09:42:26 【问题描述】:我在 jQuery Datatable 论坛上问过这个问题,但没有多大帮助。如果有人使用过 jQuery 数据表并通过在请求选项时设置初始数据来使其工作,并且没有让第 1 页的 ajax 调用发出。当我的 sAjaxSource 在初始化阶段设置时,它会自动再次发出请求即使我使用数据对其进行了初始化,也要加载数据。
http://datatables.net/forums/discussion/6459/load-initial-data-without-ajax-call#Item_3
【问题讨论】:
【参考方案1】:I think you are looking for the iDeferLoading feature.
$(document).ready(function()
$('#example').dataTable(
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "scripts/server_processing.php",
"iDeferLoading": 57
);
);
更新:我刚刚在论坛中阅读了您的问题。也许您的问题毕竟不是那么简单,但我需要查看您的数据表设置,以便为您提供更明智的意见。
我在生产环境中使用数据表,并且对 API 有所了解;但同样,如果不查看您的设置并准确了解您的第二个 ajax 调用的处理方式,则很难提供帮助。我将把这个答案留在这里,因为它的价值。
【讨论】:
我认为您实际上明白了这一点:当页面加载时,他不想要一个 ajax 调用,而这正是我认为您的解决方案所得到的结果 在我回到这篇文章之前,我实际上发现了 iDeferLoading,但它确实有效。但它是 iDeferLoading: true,而不是 57。 @Mike Flynn 我从数据表网站发布了这段代码。我自己不使用 iDeferLoading 功能,但这样称呼很奇怪,因为 iDeferLoading 中的i
代表 integer
所以它应该是一个 int。也许您指的是bDeferLoading
参数(b
代表布尔值)?我相信这两个参数都是有效的,并且每个都有不同的用途。 iDeferLoading
只是告诉数据表最初加载了多少条记录而不发出 ajax 请求,以便分页控件可以显示正确的计数和分页(如 57 行中的第 1-10 页)
不,你是对的。我想通了,但忘了更新这篇文章。以上是关于jQuery DataTables 和初始数据加载的主要内容,如果未能解决你的问题,请参考以下文章