Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 24.03.2020, 15:27
Новичок на форуме
Отправить личное сообщение для Евгений d Посмотреть профиль Найти все сообщения от Евгений d
 
Регистрация: 24.03.2020
Сообщений: 3

при отображени страницы без перезагрузки не все срабатывает
Страница создается динамически в зависимости от данных
<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й.
Ответить с цитированием
  #2 (permalink)  
Старый 25.03.2020, 11:53
Новичок на форуме
Отправить личное сообщение для Евгений d Посмотреть профиль Найти все сообщения от Евгений d
 
Регистрация: 24.03.2020
Сообщений: 3

Поставлю вопрос по другому.
При открытии раннее закрытой страницы, я программно делаю выбор 1го radio. Как положено, срабатывает его обработчик. А потом (скорее всего из кеша) браузер выставляет старое состояние input-ов (как было на момент закрытия страницы), уже без срабатывания обработчиков события для выбора.
Как это побороть?
Ответить с цитированием
  #3 (permalink)  
Старый 25.03.2020, 12:57
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от Евгений d
Как это побороть?
Для начала сделай тестовый пример, на котором это проявляется... Выложи его тут с инструкциями как такое получить...
Возможно найдутся желающие помочь.
Ответить с цитированием
  #4 (permalink)  
Старый 25.03.2020, 14:39
Новичок на форуме
Отправить личное сообщение для Евгений d Посмотреть профиль Найти все сообщения от Евгений d
 
Регистрация: 24.03.2020
Сообщений: 3

Ответ нашел. Решается:
<label><input name='rbCountry' class='rbCountry' autocomplete='off' id='rbCountry"+val.id+"' type='radio' value='"+val.id+"'>"+val.title_short+"</label>


Это баловалось кеширование. Исправило autocomplete='off'
Правда не проверял, для всех ли браузеров это проходит
Ответить с цитированием
  #5 (permalink)  
Старый 26.03.2020, 07:29
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,121

Сообщение от Евгений d
Ответ нашел.
Создание тестовых примеров помогает в самостоятельном решении многих проблем...
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обновление отдельного блока без перезагрузки страницы BellaChao Общие вопросы Javascript 4 29.01.2018 14:40
Отправка e-mail без перезагрузки страницы raffx AJAX и COMET 2 26.11.2013 16:13
Можно ли изменить адресную строку без перезагрузки страницы (не якорь) Papa Общие вопросы Javascript 2 08.05.2010 03:45
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37
Автообновление <div> без перезагрузки страницы Antihrist AJAX и COMET 14 28.07.2008 06:06