【发布时间】:2012-10-01 23:34:36
【问题描述】:
我正在使用 jquery 将行加载到表中,我想知道如何让它们一一加载;即第二个块只有在第一个块完成加载后才开始加载。
我的桌子有点像这样:
<table id="dynamicTable">
<thead>
<tr>
<th>Heading</th>
...
</tr>
</thead>
<tbody id="1">
</tbody>
<tbody id="2">
</tbody>
</table>
而我的 jquery 看起来有点像这样:
$("table#dynamicTable tbody").each(function() {
$(this).load("filethatgeneratestablerows.php");
});
(它比这更复杂一点,因为它基于 tbody id 生成内容,并且还包括一个复选框系统来选择您想要影响的 tbody 元素,但是一切正常,所以我将它剥离到让我的实际问题更明显!)
【问题讨论】:
-
如果您希望
$.each有效地以 1 的方式加载(至少,在没有类似队列的系统的情况下),则不能使用它们。为什么要单独加载每一行?这是很多要求.. -
@Shmiddty:“我想知道如何让它们一个一个地加载”——这就是问题所在。对我来说似乎是一个非常简单的问题。看起来所需要的只是解释异步调用的工作原理以及如何解决这个问题以让它做他想做的事情。
-
感谢大家的建议,我已经实现了@user1689607 的回答,而且效果很好。
标签: javascript jquery