Een noob vraag over jquery.
Is er een event in jquery die aangeeft dat de optie lijst van een select-box is veranderd?
Ik heb een keten van 3 select-boxen gemaakt die op elkaar reageren. Op zich graat dit goed, maar de veranderingen worden alleen naar de child doorgevoerd en niet naar het niveau eronder. m.a.w. als ik in de eerste select een optie kies, dan veranderd de tweede ook, maar de 3e blijft hetzelfde. Ook bij het laden van de pagina is er in de eerste select al wel iets geselecteerd, maar in de rest niet.
Wat is de goede manier om dit te doen?
mijn html:
<select id="test1" blaat="#test2" class="vervolg">
{% for o in lijst %}
<option id="test1" value="1" class="vervolg" child="#test2">a</option>
<option id="test2" value="2" class="vervolg" child="#test3" >b</option>
<option id="test3" value="3">c</option>
{% endfor %}
</select>
<select id="test2" blaat="#test3" class="vervolg">
</select>
<select id="test3">
</select>
Mijn javascript:
<script>
$(document).ready(function() {
$(".vervolg").change(function(){
var par = $(this).attr('id');
var child = $(this).attr('child');
var select = $(this).find("option:selected").attr("value");
$.get("ajax/maak2/" + par + "/" + select + "/", function(data){
var sel = $(child);
sel.empty();
for (var i=0; i <data.length; i++) {
if (i==0){
sel.append('<option value="' + data[i].id + '" selected>' + data[i].desc + '</option>');
}else{
sel.append('<option value="' + data[i].id + '">' + data[i].desc + '</option>');
}
}
}, "json");
});
});
</script>