gpt4 book ai didi

javascript - 如何通过迭代获取值在 jquery 中创建 JSON 对象

转载 作者:行者123 更新时间:2023-11-30 12:45:45 26 4
gpt4 key购买 nike

我是 JSON 和 jquery 的新手。我有以下用例需要一些帮助。

我需要按以下格式创建一个对象数组:

{ "endpoint" : [ 
{ "ip": "16.140.23.90", "mac": "a2:35:67:e7" },
{ "ip": "16.140.23.91", "mac": "36:b1:79:ab" }
]
}

这是我需要的示例(仅代表两行,可以有更多)。现在我需要通过遍历表的选定行来添加 ip 和 mac 的值。例如。 GUI 上有一个表格,其中每一行都有两列“IP”和“MAC”。我需要以上述格式获取所选行的数据。

迭代时需要添加属性的值,如何形成上述格式的JSON数组?我可以使用 JSON.stringify API 做些什么?如果是,那么我如何形成可以传递给 JSON.stringify 的字符串,从而产生上述格式?

我们将不胜感激任何帮助。

最佳答案

如果这是您的表格(第一个单元格是 ip,第二个单元格是 mac)

<table id='tbl'>
<tr><td>16.140.23.90</td><td>a2:35:67:e7</td></tr>
<tr><td>16.140.23.91</td><td>36:b1:79:ab</td></tr>
</table>

纯JS

var ips = { "endpoint" : [] };
var tbl = document.getElementById('tbl');
for (var i=0; i<tbl.rows.length; i++) {
ips["endpoint"].push({
"ip" : tbl.rows[i].cells[0].innerHTML,
"mac" : tbl.rows[i].cells[1].innerHTML
});
}

Fiddle

jQuery

var ips = { "endpoint" : [] };
$(document).ready(function() {
$('#tbl tr').each(function(i) {
ips["endpoint"].push({
"ip" : $(this).find('td:eq(0)').text(),
"mac" : $(this).find('td:eq(1)').text()
});
});
var json = (JSON.stringify(ips));
document.getElementById('json').innerHTML = json;
});

Fiddle

关于javascript - 如何通过迭代获取值在 jquery 中创建 JSON 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22549984/

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