【发布时间】:2017-03-13 01:22:02
【问题描述】:
我只是对使用 jQuery 将数据加载到表中感到困惑。如何正确地将数据加载到表中?只是下面的示例表,它仅使用 for 循环用 JavaScript 编写。我不熟悉使用 jQuery 的 $.each()。
JSON 数组数据:这是 COLUMN:
{
"data": [
[
"ID",
"TYPE",
"TOTAL",
"1 bed room",
"2 bed room"
]
]
}
JSON 数组数据:这是数据:
{
"data": [
[
"100",
"Total Transaction Amount",
"9812355000",
"23397000",
"13976000"
],
[
"100",
"No. of units",
"1268",
"3",
"2"
],
[
"100",
"(Total sq.ft.)",
"",
"",
""
],
[
"100",
"Avg. price",
"7738450",
"7799000",
"6988000"
],
[
"100",
"Avg. sq.ft.",
"",
"",
""
],
[
"100",
"Max. price",
"25494000",
"9918000",
"7318000"
],
[
"100",
"Max. sq.ft",
"",
"",
""
],
[
"100",
"Min. price",
"5904000",
"6465000",
"6658000"
],
[
"100",
"Min. sq.ft",
"",
"",
""
]
]
}
jQuery 脚本:
<script>
$(document).ready(function () {
$.ajax({
type: "POST",
url: "@Url.Action("FlatType", "Home", new {id = ViewBag.Id})",
async: true,
contentType: "application/json; charset=utf-8",
dataType: "json",
cache: false,
success: function (data) {
var table = "<tr>";
$.each(data.data, function (index, value) {
table += "<td>" + value + "</td>";
console.log(value);
});
table += "</tr>";
$("#myColumns").html(table);
}
});
});
</script>
<script>
$(document).ready(function () {
$.ajax({
type: "POST",
url: "@Url.Action("FlatTypeById", "Home", new {id = ViewBag.Id })",
async: true,
contentType: "application/json; charset=utf-8",
dataType: "json",
cache: false,
success: function (data) {
var table = "<tr>";
$.each(data.data, function (index, value) {
table += "<td>" + value + "</td>";
console.log(value);
});
table += "</tr>";
$("#myData").html(table);
}
});
});
</script>
表:
<table class="table table-bordered">
<thead id="myColumns"></thead>
<tbody id="myData"></tbody>
</table>
示例图片:
【问题讨论】:
-
为什么有两个请求?只需发出一个请求,并将索引 0 处的子数组用作表头,其余的用作表的主体(必须调整服务器端代码)!
-
或者更好的
data会像:{header: [...], body: [[...], [...], ...]}! -
@ibrahimmahrir 实际上有 2 个查询我们用于其他目的先生。
-
@imprezzeb 用于其他目的先生。
-
@imprezzeb 有效!
标签: javascript jquery json