Tôi bị mất một chút. Tôi nhận JSON này:GroupBy trong JavaScript để nhóm dữ liệu JSON và điền vào optgroup
[{
"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"
}]
Và tôi muốn đặt tất cả những điều này trong một lựa chọn với các tùy chọn và optgroups. Trên thực tế các optgroup nên loại
Tôi muốn một cái gì đó như thế này:
<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>
Hôm nay tôi đã chỉ làm điều này vì tôi đang gặp khó khăn quá nhiều:
$(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");
});
});
});
Như bạn có thể thấy không có optgroup :) Có cách nào để làm điều này? Tôi cũng có thể sửa đổi JSON của mình nếu nó có thể làm cho nó dễ dàng hơn.
Cảm ơn bạn đã được trợ giúp.
Tên truy nhập sử thi là tất cả tôi có thể nói. – donutdan4114
@ donutdan4114 Cảm ơn. Đó là hoặc là "LOOK AT ME! LOOK AT ME!". –
Cảm ơn rất nhiều !! Tôi đã sửa đổi JSON của mình và thực hiện như bạn đã nói! Nó hoạt động hoàn hảo! – user1108276