Firefox会在每次刷新时更改选择单选框!

时间:2011-04-25 08:22:35

标签: javascript html firefox

我正在尝试动态地向具有两个单选框的页面添加一个选择框,但是Firefox的行为很奇怪。虽然第一个单选按钮明确定义为已选中,但在刷新页面时选择了更改(使用F5)。

完整的html是(查看here):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head></head>
<body>
    <form>
        <div id="txt0"></div>
        <input value="10" type="radio" name="a" checked="checked">
        <input value="11" type="radio" name="a">
    </form>
    <script type="text/javascript">
        window.onload = function(){
            document.getElementById('txt0').innerHTML = '<select name="sa"></select>';    
        };
    </script>
</body>
</html>

1 个答案:

答案 0 :(得分:2)

它看起来像某种缓存问题。做了一些测试:

  • 使用CTRL-F5刷新(绕过缓存设置)工作
  • 更改其他无线电输入的名称
  • 使用id提供两个输入都不起作用。
  • 在输入工作之后放置#txt0
  • 使用appendChild添加select-tag无法正常工作
  • 将无线电输入放入 单独的div不起作用
  • 使用checkedchecked=true无效
  • 向选择框添加选项不起作用
  • 在#txt0和第一个无线电输入之间放置一个div无法正常工作
  • 超时后无法创建选择标记
  • 添加元标记以防止缓存无法正常工作
  • 添加document.forms[0].a[0].checked = 'checked' worked(doh!)

无论如何,它是recognised Firefox problem,所以你唯一能做的就是使用上面找到的解决方法之一,等到ff解决它。