【问题标题】:Dynamically created radio inputs don't check in IE7动态创建的无线电输入不检查 IE7
【发布时间】:2010-11-05 22:25:27
【问题描述】:

我遇到了一个奇怪的 IE 特定错误。似乎在使用document.createElement 创建无线电输入时,生成的小部件不会响应点击。当您单击它们时,它们会变灰一秒钟,但不会被选中。它在 FF3 中按预期工作,但在 IE7 中没有。知道这是怎么回事吗?

<html>
<body>
    <form>
        <div id="foo">
        </div>
    </form>

    <script>
        var foo = document.getElementById('foo');

        var t = document.createElement('input');
        t.type='radio';
        t.name ='fool';

        var f = document.createElement('input');
        f.type='radio';
        f.name ='fool';

        foo.appendChild(t);
        foo.appendChild(f);

    </script>
</body>
</html>

【问题讨论】:

标签: javascript internet-explorer-7


【解决方案1】:

由于某种原因,在 IE 中创建这样的单选按钮不起作用。

似乎可行的解决方案(根据找到的文章here)是:

var r;
try {
  // This works in IE
  r = document.createElement('<input type="radio" name="foo1"/>');
} catch( err ) {
  // For everyone else
  r = document.createElement('input');
}
r.setAttribute('type', 'radio'); 
r.setAttribute('name', 'foo1');

【讨论】:

    猜你喜欢
    • 2021-09-23
    • 2013-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多