gpt4 book ai didi

javascript - 向表中添加动态数据

转载 作者:行者123 更新时间:2023-11-30 08:15:38 25 4
gpt4 key购买 nike

我的应用程序中有下表。我有一个 ajax 请求,它将获取要显示在表中的结果。如何将这些结果添加到表中而不每次都覆盖表头?

<table id="itemList">
<td>Name</td>
<td>Price</td>
<td>Quantity</td>
<td>Total</td>
</table>

那么ajax数据如下图

var items = [
{ Name: "Apple", Price: "80", Quantity : "3", Total : "240" },
{ Name: "Orance", Price: "50", Quantity : "4", Total : "200" },
{ Name: "Banana", Price: "20", Quantity : "8", Total : "160" },
{ Name: "Cherry", Price: "250", Quantity : "10", Total : "2500" }
];

现在我正在尝试类似的方法,但它不起作用

var rows = "";
$.each(items, function(){
rows += "<tr><td>" + this.Name + "</td><td>" + this.Price + "</td><td>" + this.Quantity + "</td><td>" + this.Total + "</td></tr>";
});

$( "#itemList" ).text('<tr><td>Name</td><td>Price</td><td>Quantity-</td><td>Total</td></tr>' + rows );

最佳答案

您可以通过进行两项更改来解决此问题。

你可以修改你的html为

<table id="itemList">
<thead>
<tr>
<td>Name</td>
<td>Price</td>
<td>Quantity</td>
<td>Total</td>
</tr>
</thead>
<tbody>
</tbody>
</table>

和脚本为

var rows = "";
$.each(items, function(){
rows += "<tr><td>" + this.Name + "</td><td>" + this.Price + "</td><td>" + this.Quantity + "</td><td>" + this.Total + "</td></tr>";
});

$( rows ).appendTo( "#itemList tbody" );

您可以找到可行的解决方案 here .

但是一个名为templates 的jquery 插件专为此目的而建。

使用 jquery 模板可以解决如下问题

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.js"></script>
<script src="http://ajax.microsoft.com/ajax/jquery.templates/beta1/jquery.tmpl.js"></script>
</head>
<body>
<script id="itemTemplate" type="text/x-jquery-tmpl">
<tr>
<td>${Name}</td>
<td>${Price}</td>
<td>${Quantity}</td>
<td>${Total}</td>
</tr>
</script>

<table id="itemList">
<thead>
<tr>
<td>Name</td>
<td>Price</td>
<td>Quantity</td>
<td>Total</td>
</tr>
</thead>
<tbody>
</tbody>
</table>

<script type="text/javascript">
$(document).ready(function(){
var items = [
{ Name: "Apple", Price: "80", Quantity : "3", Total : "240" },
{ Name: "Orance", Price: "50", Quantity : "4", Total : "200" },
{ Name: "Banana", Price: "20", Quantity : "8", Total : "160" },
{ Name: "Cherry", Price: "250", Quantity : "10", Total : "2500" }
];

$( "#itemTemplate" ).tmpl( items ).appendTo( "#itemList tbody" );
});
</script>
</body>
</html>

但如果您更感兴趣,您可以深入了解其他一些插件,例如 dataTablesjqgrid这是使用 jQuery 的非常好的网格数据框架。

关于javascript - 向表中添加动态数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4577559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com