Mam dwa zaznaczenia, które są połączone: Każda wartość pierwszego wyboru określa, które elementy będą wyświetlane w drugim wyborze.select2 zmiana pozycji dynamicznie
Wartości drugie wybrania są przechowywane w tablicy dwa wymiary:
[ [{"id":1,"text":"a"}, {"id":2,"text":"b"},...],
[{"id":"1a","text":"aa"},{"id":"1b","text":"ba"},...],
...
]
Pierwszy dobrać wartość określa indeks jest stosowany do wypełnienia drugiej wybierz. Tak więc w przypadku "zmiany" na pierwszym, powinienem móc modyfikować elementy select-two zawiera.
Czytanie dokumentacji Myślę, że potrzebuję skorzystać z opcji "danych" ... ale nie wyjaśnię, jak przykład ładuje dane tablicy podczas inicjalizacji i wygląda na to, że nie działa, jeśli spróbuję zrobić to samo po inicjalizacji .
HTML
Attribute:
<select name="attribute" id="attribute">
<option value="0">Color</option>
<option value="1">Size</option>
</select>
Value:
<select name="value" id="value"></select>
<script>
var data = [ [{"id":1,"text":"black"}, {"id":2,"text":"blue"},...],
[{"id":"1","text":"9"},{"id":"1","text":"10"},...],
];
$('#attribute').select2().bind('change', function(){
// Here I need to change `#value` items.
$('#value').select2('data',data[$(this).val()]); // This does not work
);
$('#value').select2();
</script>
Pokaż nam kod już masz. – Aesthete
Przykład dodany, W komentarzu próbowałem $ ("wartość #"). Select2 ("dane", dane [$ (this) .val()]); –
https://stackoverflow.com/questions/16480910/update-select2-data-without-rebuild-the-control – ndpu