【发布时间】:2015-04-07 00:15:32
【问题描述】:
使用 jQuery,当表格单元格本身以编程方式生成时,如何使用 AJAX 调用填充表格单元格的值?
我正在构建一个如下工作的页面:
- 执行初始 AJAX 调用,需要一个 JSON 数组,例如项目名称列表
- AJAX 回调使用
jQuery.each遍历数组 - 每个数组项的回调会在表中添加一行,并带有项名称
- 还有其他单元格(假设它们代表项目位置),但要获得此值,需要进行另一个 AJAX 调用(在示例中标记为
*) - 我该如何实现此功能?
示例表结构:
Name Location1 Location2
================================
Item1 * *
Item2 * *
其他注意事项:
- 需要满足动态数量的列,即位置。这就是为什么我
- 我知道有大量的电话,但不关心这个问题
- 我正在使用DataTables 插件
- 我想了解这是否真的可以在不更改 Web 服务后端以生成整个表或至少一次生成一行的情况下完成。通过对每个单元格执行查询,我可以重用现有调用。
注意:我正在使用以下代码添加表格行,我愿意对其进行更改。 Reference
$("#tableID").find("tbody").append($('<tr>')
.append($('<td>').text(...))
.append($('<td>').text(...))
.append($('<td>').text(...))
);
我想我可能会为每个单元格生成 ID,然后基于此触发 AJAX 调用,但这似乎有点笨拙。有没有更优雅的方法来做到这一点?
理想情况下,任何解决方案都可以进行调整以处理向表中添加额外列的用例,例如上面示例表中的位置 3。
【问题讨论】:
-
@RawN 更新了问题 - 我如何能够实施第 4 步?其余的主要是为了上下文
-
如果您使用的是 dataTables 插件,您没有附加自己的 html,插件将无法识别它的存在。使用 API 添加数据
-
@charlietfl 要点——我还没有进行数据表集成,典型的方法是生成一个完整的行,然后将其传递给 API。在这个问题中,我正在寻找有关如何管理所有每个单元格回调的想法
-
为什么不能在第二个请求的回调中将数据添加到插件api?
标签: javascript jquery ajax