Здравствуйте!
Сразу извиняюсь, если что-то подобное уже обсуждалось. Не нашел, т.к., вероятнее всего, неверно формулирую запрос.
Имеется такой код JS:
$(document).ready(function(){
$('#aaa input').change(function(){
if(this.value == 1)
$('#bbb').html('<input type="checkbox" name="cb" value="1" />1');
else{
$('#bbb').html('<input type="checkbox" name="cb" value="2" />2'+
'<br /><input type="checkbox" name="cb" value="3" />3');
}
});
$('#bbb input').change(function(){
$('#out').html(this.value)
});
});
И, соответственно, html,
Код:
|
<form>
<div id="aaa">
<input type="radio" name="rb" value="1" />Var 1<br />
<input type="radio" name="rb" value="2" />Var 2<br />
</div>
<div id="bbb">
<input type="checkbox" name="cb" value="1" />
</div>
<div id="out"></div>
</form> |
При первой загрузке страницы функция, обрабатывающая щелчок по чекбоксу, (строка 10) работает: в #out записывается 1.
НО при нажатии радио-кнопки Var2 генерируются другие чекбоксы, которые должны обрабатываться этой же функцией. Но она, увы, уже не работает. То же самое, если мы щелкаем Var1
Пока решил проблему, повесив на чекбоксы onClick, но, может быть, волшебник JQuery позволяет как-то более цивилизовано подойти к решению данной проблемы?