jquery 为了加快速度,一次只从json文件中加载数据表中的几个值(第一个值)

ubof19bj  于 2022-11-03  发布在  jQuery
关注(0)|答案(1)|浏览(148)

我正在使用保存在一个在线url中的json数据加载一个数据表。问题是,当数据变得很大时(在这个例子中,10,000多行),数据表需要太长的时间来加载(30多秒)。
我想让它只加载页面所需的值。目前,它被分页,大约有12个值显示在页面上,但我认为它很慢,因为它首先加载整个数据集。
有没有一种方法可以使它只先加载这十几个值,而不是等待整个加载?
它仍然需要对几个click/search事件做出响应,以便当用户搜索或单击几个过滤器时,数据表会更新--但我还是希望它只显示结果的第一页。

代码

第一个
我已经尝试了一些东西在这里和那里与 AJAX ,但我真的没有太多的运气,让它与这个json是存储在一个在线网址工作。

06odsfpq

06odsfpq1#

简短回答-不可能
较长的一个:JSON文件表示序列化的数据。因此,它 * 必须 * 在解析之前到达其末尾。想象一下下面的场景:

{
  "rows": [
    { "id": 1 },
    { "id": 2 },
    // --> you want it split up until here

    { "id": 5 },
  ]
}

假设JSON可以解析这个。rowslength是多少?它不能是3,因为列表被分成了块,每个块包含的项的数量不相等。您希望将它分割到2,但明天它可能是5。因为它是任意的,JSON解析器无法想象您想要的所有变体。请记住,这是数据操作的标准机制-您会对对象做什么?:)
在您的例子中,由于您不控制JSON文件的生成,所以没有太多的工作要做。如果您想加载一些巨大的东西,那么,您必须等待它:)您可以使用一些技术来避免阻塞UI,但这不会保存您的时间。

相关问题