gpt4 book ai didi

javascript - 使用来自 json 的 optgroup 创建 html 选择

转载 作者:可可西里 更新时间:2023-11-01 02:41:22 24 4
gpt4 key购买 nike

我有一个 JSON 字符串(来自 php json_encode),看起来像这样;

var json = [{"Foo":[{"id":1,"name":"aaa"},{"id":2,"name":"bbb"}]},{"Bar":[{"id":3,"name":"ccc"},{"id":4,"name":"ddd"}]}];

我希望能够在表单中使用 Javascript/jQuery 创建一个 html 选择;

<select>
<optgroup label="Foo">
<option value="1">aaa</option>
<option value="2">bbb</option>
</optgroup>
<optgroup label="Bar">
<option value="3">ccc</option>
<option value="4">ddd</option>
</optgroup>
</select>

在处理 json 方面,我得到 this far (我知道不远),但是 jsFiddle 无法运行它并卡住了我的浏览器。

var json = [{"Foo":[{"id":1,"name":"aaa"},{"id":2,"name":"bbb"}]},{"Bar":[{"id":3,"name":"ccc"},{"id":4,"name":"ddd"}]}];

$.each(json, function(i,group) {
    console.log(i);
    $.each(group, function(j, option) {
        console.log(j, option);
        $.each(option, function(k, item) {
            console.log(k, item);
        });
    });
});​

最佳答案

这应该运行得很好。

var $select = $("<select>");
$select.appendTo("#somewhere");

$.each(json, function(i, optgroups) {
$.each(optgroups, function(groupName, options) {
var $optgroup = $("<optgroup>", {label: groupName});
$optgroup.appendTo($select);

$.each(options, function(j, option) {
var $option = $("<option>", {text: option.name, value: option.id});
$option.appendTo($optgroup);
});
});
});

关于javascript - 使用来自 json 的 optgroup 创建 html 选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13956667/

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