при отображени страницы без перезагрузки не все срабатывает
Страница создается динамически в зависимости от данных
<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, время: 07:52. |