我有这样的 HTML 代码:
function toggle_action(type) {
var tabs = document.getElementsByName("action_tab")
for(var i = 0 ; i < tabs.length; i++){
//alert(" i = " + i + " length=" + tabs.length );
if(tabs[i].id == type.value){
tabs[i].style.display='inline';
}else{
tabs[i].style.display='none';
}
};
}
一个
<div id="action_types">
<input type="radio" checked name="action_type" value="EmailActionDescription" onclick="toggle_action(this);"/><label>Email</label>
<input type="radio" name="action_type" value="TicketActionDescription" onclick="toggle_action(this);"/><label>Ticket</label>
</div>
它在 firefox 中工作正常,但在 internet explorer 中不起作用。
有什么想法吗?按钮基本上显示 2 个选项之一,票或电子邮件,当点击票时它只是不显示。
如果您需要任何进一步的信息,请告诉我。
谢谢
最佳答案
var tabs = document.getElementsByName("action_tab")
首先,getElementsByName()
在 IE 中被破坏。而是使用 getElementsByTagName()
和/或 getElementById()
.或者更好,使用 jQuery和 $('[name=action_tab]')
.
其次,这听起来像 <div name="action_tab">
等等。 HTML <div>
元素没有指定的 name
属性,我怀疑自定义 name
getElementsByName()
属性将在 IE 中以这种方式工作.
关于javascript - 单选按钮在 Internet Explorer 中不起作用,但在 Firefox 中可以正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2920631/