при отображени страницы без перезагрузки не все срабатывает
Страница создается динамически в зависимости от данных
<script>
$(window).on('load', function(){
вызов функции заполнения страницы
});
</script>
</head>
Функция заполнения страницы:
{
$("#divSelect").empty();
...
$.each(countryRows, function(i, val)
{
s="<label class='labelRB'><input name='rbCountry' class='rbCountry' id='rbCountry"+val.id+"' type='radio' value='"+val.id+"'>"+val.title_short+"</label>";
$("#divSelect").append(s);
})
$('input:radio.rbCountry').bind("click", fOnSelectCountry);
$(".rbCountry:first").prop('checked',true);
alert($(".rbCountry:first").attr("id"));
...
}
function fOnSelectCountry()
{
alert($('input[name=rbCountry]:checked').attr("id"));
....
}
Когда обновляю страницу - все нормально. Но если я закрываю браузер с загруженной страницей на которой выбран 2й radio, а потом браузер запускаю - по алертам идет подтверждение выбора первого 'radio', срабатывает и обработчик для него. А на экране показывает что выбран 2й. |
Поставлю вопрос по другому.
При открытии раннее закрытой страницы, я программно делаю выбор 1го radio. Как положено, срабатывает его обработчик. А потом (скорее всего из кеша) браузер выставляет старое состояние input-ов (как было на момент закрытия страницы), уже без срабатывания обработчиков события для выбора. Как это побороть? |
Цитата:
Возможно найдутся желающие помочь. ;) |
Ответ нашел. Решается:
<label><input name='rbCountry' class='rbCountry' autocomplete='off' id='rbCountry"+val.id+"' type='radio' value='"+val.id+"'>"+val.title_short+"</label> Это баловалось кеширование. Исправило autocomplete='off' Правда не проверял, для всех ли браузеров это проходит |
Цитата:
|
| Часовой пояс GMT +3, время: 06:10. |