Я уже возился с радиобоксами. Я сталкиваюсь с проблемой, которая зависит от того, какой браузер использует пользователь. В принципе, моя цель состоит в том, чтобы генерировать другие данные на странице в зависимости от выбранного радиобокса. Важно, чтобы эти данные оставались в синхронизации с радиооболочками. Обычно это не проблема: я запускаю код ниже при изменении выбора.Обработка состояния радиатора Javascript на перезагрузке страницы
Однако есть проблемы с тем, как браузеры часто кэшируют этот флажок. Кажется, что IE подождал, пока скрипт закончит работать, а затем переключит, какие радиообъекты выбраны. С другой стороны, Firefox помнит, какой флажок установлен и отображает его соответственно ... но проверенное свойство игнорирует это. Я могу заставить Firefox поддерживать синхронизацию этой информации, сняв галочку и проверив флажок (две прокомментированные строки кода ниже), хотя это своего рода хакерство.
В настоящее время, моя лучшая идея состоит в том, чтобы генерировать радиокадры с помощью сценария, чтобы убить способность браузеров кэшировать их. Может ли кто-нибудь предложить менее хакерскую альтернативу?
<br />
<input type="radio" name="DataRadio" checked="checked"
Value="V1" onclick="doDataRadio()" />V1
<br />
<input type="radio" name="DataRadio"
Value="V2" onclick="doDataRadio()" />V2
<br />
<input type="radio" name="DataRadio"
Value="V3" onclick="doDataRadio()" />V3
function selCountry()
{
var len = theForm.DataRadio.length;
for (i = 0; i < len; i++) {
if (theForm.DataRadio[i].checked)
{
chosen = theForm.DataRadio[i].value;
//theForm.DataRadio[i].checked = false;
//theForm.DataRadio[i].checked = true;
alert(chosen);
}
}
}
Благодарим вас, это не только устраняет проблему, но и работает без потери кешированной информации браузера. – Brian