Je suis un peu perdu. Je reçois ce JSON:GroupBy en JavaScript pour grouper les données JSON et remplir sur 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"
}]
Et je voudrais mettre tout cela dans une sélection avec des options et optgroups. En fait, la optgroup devrait être la catégorie
Je voudrais quelque chose comme ceci:
<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>
Aujourd'hui, je n'ai fait parce que je me bats trop:
$(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");
});
});
});
Comme vous ne pouvez pas voir optgroup :) Y at-il un moyen de faire cela? Je peux aussi modifier mon JSON si cela peut le rendre plus facile.
Merci pour toute aide.
nom d'utilisateur épique est tout ce que je dois dire. – donutdan4114
@ donutdan4114 Merci. C'était soit cela ou "REGARDEZ-MOI! REGARDEZ-MOI!". –
Merci beaucoup! J'ai modifié mon JSON et fait comme tu l'as dit! Cela fonctionne parfaitement! – user1108276