我有一个包含单选按钮的表格(即 3x3 网格),当我选择其中一个包含单选按钮的表格时,我希望改变颜色。按照这个 example我这样做了
<table class="table-name">
<tr>
<td>
<span>Some text</span>
<input type="radio" name="some-name" />
</td>
<td>
<span>Some text</span>
<input type="radio" name="some-name" />
</td></tr>
</table>
和javascript
$(':radio').change(function() {
$('.color-1').removeClass('color-1');
var $td = $(this).parent('td');
if (this.checked) {
$td.addClass('color-1');
} else {
$td.removeClass('color-1');
}
});
这在 firefox 上运行良好。但在 Internet Explorer 上它会为之前选择的颜色着色 因此,如果我选择 1,1,它会保持白色,但当我选择 1,2 时,1,1 会变成蓝色,依此类推。
有什么想法吗?
最佳答案
IE(所有版本)在 checkboxes
和 radio buttons
上执行 onChange
事件时确实存在错误。
如果您想提供可靠的跨浏览器行为,则必须使用 onClick
事件。
参见 this link了解更多信息。
关于JQuery 和 RadioButtons 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1973831/