javascript控制点击后加个css进去

<div>
<label class="local">
<input name="1" type="radio" value="1">
</label>

<label class="local">
<input name="2" type="radio" value="2">
</label>

<label class="local">
<input name="3" type="radio" value="3">
</label>
</div>
求大神帮我写个当点击其中一个按钮后,自动给<label class="local">中的class里面再加个样式如 ach 变成<label class="local ach">
当点击第二个的按钮后 第一个ach消失 自动加给第二个input的css
第三个,第四个.....同上哈
求大神帮帮忙,谢谢

第1个回答  2016-10-26
处理radio的onclick事件,在事件处理函数中使用对象的className来修改class的值。代码类似:
HTML:

<input name="1" type="radio" value="1" onclick="onRadioClk(this);" />
JavaScript:
var g_preObj;

function onRadioClk(radioObj) {
if (g_preObj != null) {
g_preObj.parent.className = "local";

}
radioObj.parent.className = "local ach";
g_preObj = radioObj;

}

不过,class名称中有空格好像不符合命名规则吧。
第2个回答  2016-10-26

jquery比较简单,javascript方法比较冗余一点。。

<div>
<label id="1" class="local">
<input name="1" type="radio" value="1" onclick="addClass(1)">
</label>
<label id="2" class="local">
<input name="1" type="radio" value="2" onclick="addClass(2)">
</label>
<label id="3" class="local">
<input name="1" type="radio" value="3" onclick="addClass(3)">
</label>
</div>
<script>
function addClass(str){
switch(str){
case 1:
document.getElementById("1").className="local ach";
document.getElementById("2").className="local";
document.getElementById("3").className="local";
break;
case 2:
document.getElementById("1").className="local";
document.getElementById("2").className="local ach";
document.getElementById("3").className="local";
break;
case 3:
document.getElementById("1").className="local";
document.getElementById("2").className="local";
document.getElementById("3").className="local ach";
break;
default:
document.getElementById("1").className="local";
document.getElementById("2").className="local";
document.getElementById("3").className="local";
break;
}
}
</script>

本回答被提问者采纳
第3个回答  2016-10-26
需要先引用jquery的库,这些代码你试试,希望可以帮到你
$(document).ready(function(){
$("input[type='radio']").click(function(){
if($(this).prop("checked")==true){
$(this).parent().addClass("ach").siblings().removeClass("ach");
}
})

})

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网