Javascript:更改虚假答案单选按钮的背景颜色

时间:2015-09-05 11:41:13

标签: javascript html radio-button



function radioResult(){
	var r = document.getElementsByName('0');
	for(var i = 0; i < r.length; i++){
		if(r[i].checked){
			rValue = r[i].value;
			if(rValue!='1') {
				r.style.backgroundColor='blue';
			} else {
				alert('correct');
			}
		}
	} 
	qNo++;
	aCount2++;
}
&#13;
<input type='radio' name='0' value='1'>a<br>
<input type='radio' name='0' value='2'>b<br>
<input type='radio' name='0' value='3'>c<br>
<input type='radio' name='0' value='4'>d<br>
<hr>
<button id="Mcqsbtn" onclick="radioResult()">Result</button> 
&#13;
&#13;
&#13;

如果答案为假,我希望radion按钮的背景变为蓝色。怎么做。 http://jsfiddle.net/mhabib555/k3h9c046/

更新

谢谢你们。我在你的帮助下解决了这个问题

3 个答案:

答案 0 :(得分:1)

您可以参考

<强> HTML

<div><input type='radio' name='0' value='1'>a</div>
<div><input type='radio' name='0' value='2'>b</div>
<div><input type='radio' name='0' value='3'>c</div>
<div><input type='radio' name='0' value='4'>d</div>    
<hr>
<button id="Mcqsbtn" onclick="radioResult()">Result</button> 

的Javascript

function radioResult(){
    var r = document.getElementsByName('0');
    for(var i = 0; i < r.length; i++){        
        if(r[i].checked){
            rValue = r[i].value;
            if(rValue!='1') {
                r[i].parentNode.style.backgroundColor='blue';
            } else {
                alert('correct');
            }
        }
    } 

}

请参阅fiddle

<强>释

您必须设置特定单选按钮的background-color。因此,您应使用r.style.backgroundColor='blue'而不是r[i].style.backgroundColor='blue'

答案 1 :(得分:1)

首先,你想要定位实际元素,即..

 r[i].style.backgroundColor='blue';

这会将属性应用于您的元素,但单选按钮的设计不具有背景颜色。我建议你用div填充div中的每个按钮,然后设置div的样式。

&#13;
&#13;
function radioResult(){
	var r = document.getElementsByName('0');
	for(var i = 0; i < r.length; i++){
		if(r[i].checked){
			rValue = r[i].value;
			if(rValue!='1') {
				r[i].parentElement.style.backgroundColor='blue';
			} else {
				alert('correct');
			}
		}
	} 
	//qNo++;
	//aCount2++;
}
&#13;
.wrap{
  padding:5px;
  }
&#13;
<div class="wrap">
<input type='radio' name='0' value='1'>a<br>
 </div> <div class="wrap">
<input type='radio' name='0' value='2'>b<br>
   </div>   <div class="wrap">
<input type='radio' name='0' value='3'>c<br>
    </div>    <div class="wrap">
<input type='radio' name='0' value='4'>d<br>
 </div> 
<hr>
<button id="Mcqsbtn" onclick="radioResult()">Result</button> 
&#13;
&#13;
&#13;

答案 2 :(得分:0)

将元素定位为:

 r[i].parentElement.style.backgroundColor='YourColor';