layui js select 中使用optgroup 标签给select 动态分组 var data = {"0":{"GZNR":"string","ZBRY":"string","ID":"string"}} 如何将对象中键 0 1 动态渲染到optgroup 对象中的值YY、HLS、YZ 渲染到对应的option中
时间: 2023-07-05 11:26:47 浏览: 86
根据您提供的数据,您可以使用以下代码将 `data` 对象中的数据渲染到 `<select>` 下拉框中:
```javascript
var data = {"0":{"GZNR":"string","ZBRY":"string","ID":"string"}};
var select = document.createElement("select");
for (var key in data) {
var optgroup = document.createElement("optgroup");
optgroup.label = "Group " + key;
for (var option in data[key]) {
var optionElem = document.createElement("option");
optionElem.value = option;
optionElem.text = data[key][option];
optgroup.appendChild(optionElem);
}
select.appendChild(optgroup);
}
document.body.appendChild(select);
```
在上面的代码中,我们首先创建了一个空的 `<select>` 标签,然后使用 `for...in` 循环遍历了对象 `data` 中的每个键值对。在循环中,我们首先创建了一个 `<optgroup>` 标签,并将其 `label` 属性设置成当前键值对的键值。然后,又使用另一个 `for...in` 循环遍历了当前键值对的值,即一个包含多个键值对的对象。在循环中,我们为每个键值对创建了一个 `<option>` 标签,并将其 `value` 属性设置为当前键值对的键,将其 `text` 属性设置为当前键值对的值,最后将其添加到当前 `<optgroup>` 标签中。最后,我们将当前 `<optgroup>` 标签添加到 `<select>` 标签中。运行代码后,就可以看到一个带有分组和选项的下拉框了。
阅读全文