繁体   English   中英

使用 forEach 或 for 循环 (JS) 从 JSON 提要填充表单字段

[英]Populating form fields from JSON feed using forEach or for loop (JS)

我有这样的表单字段

<input id="first">
<input id="second">
<textarea id="third"></textarea>
...

我需要用来自 JSON 提要的数据动态填充它们。 每个字段的 id 对应于每个 JSON 的 key ,所以我可以这样填充这些字段:

first.value = feed.first;
second.value = feed.second;
third.value = feed.third;
...

但我想让它更简单。

这是我试过的:

["first", "second", "third"].forEach(e => {e.value = feed[e]});

可悲的是,它不起作用。 在控制台中,我可以看到 JSON 提要的值 ( feed[e] ),但表单字段为空白。

我究竟做错了什么?

任何建议将不胜感激。

请使用 eval function。

[“第一”、“第二”、“第三”].forEach(e => {eval(e).value = feed[e]});

您可以尝试使用document.getElementById获取特定的 DOM 元素
然后分配你想要的值。

const feed = {
    'first': 'hello',
    'second': 'word',
    'third': '!'
};

['first', 'second', 'third'].forEach(e => {
    document.getElementById(e).value = feed[e]
});

下面的链接是一个完整的演示。
https://jsfiddle.net/2x0o8d4m/1/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM