我有点失落。我得到这个 JSON:
[{
"id": "210",
"name": "Name 1",
"category": "Category 1"
}, {
"id": "187",
"name": "Name 2",
"category": "Category 1"
}, {
"id": "186",
"name": "Name 3",
"category": "Category 1"
}, {
"id": "185",
"name": "Name 4",
"category": "Category 1"
}, {
"id": "184",
"name": "Name 5",
"category": "Category 1"
}, {
"id": "183",
"name": "Name 6",
"category": "Category 1"
}, {
"id": "182",
"name": "Name 7",
"category": "Category 1"
}, {
"id": "181",
"name": "Name 8",
"category": "Category 2"
}, {
"id": "180",
"name": "Name 9",
"category": "Category 3"
}, {
"id": "178",
"name": "Name 10",
"category": "Category 2"
}]
我想把所有这些都放在一个带有选项和 optgroup 的选择中。实际上 optgroup 应该是类别
我想要这样的东西:
<select name="products" class="product" id="product">
<optgroup label="Category 1">
<option value="210">Name 1</option>
<option value="187">Name 2</option>
<option value="186">Name 3</option>
<option value="185">Name 4</option>
...
</optgroup>
<optgroup label="Category 2">
<option value="181">Name 8</option>
<option value="178">Name 10</option>
</optgroup>
<optgroup label="Category 3">
<option value="180">Name 9</option>
</optgroup>
今天我只做了这个,因为我太挣扎了:
$(document).ready(function () {
$.getJSON("5.php", {
val: $(this).val()
}, function (data) {
$.each(data, function (i, item) {
$("<option/>").attr("value", item.id).append(item.name).appendTo("optgroup");
});
});
});
如您所见,没有 optgroup :) 有没有办法做到这一点?如果可以更轻松,我也可以修改我的 JSON。
谢谢你的帮助。