我编写了一个javascript函数,当我选择表单中的单选按钮(称为onchange事件)时,该函数会更改div(此处为TR标签)的样式。

function handleCheck(myRadio) {
    var vak = 'vak' + myRadio.name + 'x' + myRadio.value;
    var col = document.getElementById(vak);
    col.style.backgroundColor = "black";
    col.style.color = "white";
}


但是,通常当您选择选项X时,会取消选择另一个选项,而一次只能选择一个值。此选项不是由onchange事件触发的。有没有办法确定不再选中单选按钮?

最佳答案

您将必须清除先前分配的类。看一下这个例子:

function handleCheck(myRadio) {
    clear(myRadio.className);
    var vak = 'vak' + myRadio.name + 'x' + myRadio.value;
    var col = document.getElementById(vak);
    col.className += ' selected';
}

function clear(className) {
    var tr = document.querySelectorAll('tr.vak' + className);
    for (var i = 0; i < tr.length; i++) {
        tr[i].className = 'vak' + className;
    }
}


演示:http://jsfiddle.net/abh7guv5/

07-24 16:40