这里是我当前的代码:单选按钮高亮
<label>
<input type="radio" id="nosupp" name="nosupp">
No Supplier Chosen
</label><br/><br/>
<cfloop query="supplier">
<label>
<input type="radio" id="chk1" name="chooseSupp" onchange="change(this);">
Chosen Supplier
</label>
</cfloop>
的Javascript:
<script type="text/javascript">
function change(obj) {
var tr=obj.parentNode.parentNode;
var tbl = tr.parentNode.parentNode;
var inputs = tbl.getElementsByTagName("input");
for(var i = 0;i<inputs.length;i++)
inputs[i].parentNode.parentNode.style.backgroundColor='transparent';
tr.style.backgroundColor=(obj.checked)? 'red' : 'transparent';
}
</script>
这样做是什么,突显每每当他们点击了循环单选按钮。
我的问题是,当我点击循环外的单选按钮(nosupp)时,循环中检查的最后一个高亮显示没有消失。
我不想在nosupp上或者当nosupp被选中时突出显示。
任何想法?
感谢您的回答,但这并未阻止循环中的单选按钮被突出显示。 – Alias 2013-02-21 11:38:48
您是否将该类添加到每个输入或循环内部的类?命令'getElementsByClassName'应该只选择具有该类的元素。 – Chris 2013-02-21 11:43:42
只是在循环中的人。 – Alias 2013-02-21 13:28:02