Html 如何将另一个样式属性添加到此onClick?

Html 如何将另一个样式属性添加到此onClick?,html,css,onclick,Html,Css,Onclick,我为我的复选框创建了这个onlick属性,我的js-fu就像,不在那里,我如何简单地添加边框颜色属性以及bg颜色 <div id="akseptwrap"> <span style="left:-20px; position:relative; top:3px;"><img src="http://euroworker.no/public/upload/1_2_arrow.gif"></span> <span id="

我为我的复选框创建了这个onlick属性,我的js-fu就像,不在那里,我如何简单地添加边框颜色属性以及bg颜色

<div id="akseptwrap">    
    <span style="left:-20px; position:relative; top:3px;"><img src="http://euroworker.no/public/upload/1_2_arrow.gif"></span>
    <span id="salgsaksept">
        <input tabindex=12 value="1"  type="checkbox" name="salgsvilkar" ID="Checkbox2" onclick="document.getElementById('salgsaksept').style.backgroundColor='#E5F7C7';" />&nbsp;Salgs- og leveringsvilkår er lest og akseptert
    </span>
</div>

Salgs-og Leveringsvillkåer和og akseptert

我想你想要的是聚焦事件

使用IE时,您需要一些javascript(例如原型):

使用Firefox(和其他浏览器)时,您只能使用css:

#Checkbox2:focus {
    /* set colors here */
}
您可以将其保存在
onclick
属性中,但通常更容易将其拆分为单独的脚本:

<span>
    <input type="checkbox" tabindex="12" value="1" name="salgsvilkar" id="Checkbox2"/>
    <label for="Checkbox2">Salgs- og leveringsvilkår er lest og akseptert</label>
</span>

<script type="text/javascript">
    document.getElementById('Checkbox2').onclick= function() {
        var s= this.parentNode.style;
        s.backgroundColor='#E5F7C7';
        s.border='solid blue 1px;';
    };
</script>
未选中此
时,仅删除该类即可将样式重置为以前的样式,而无需记住旧的背景和边框值

设置超时的
是什么?嗯,当
onclick
事件发生时,您只需单击复选框,它还没有切换其检查性。事实上,如果
返回false
,则根本无法更改复选框。因此,在复选框单击的默认操作发生后,我们告诉浏览器在tic中给我们回电话。(因此,我们必须保留
this
的值,该值将被超时函数中一个新的、无用的
this
隐藏。)

onclick
确实是这里使用的错误事件,它应该是
onchange
。但是,您通常会看到使用了
onclick
,因为IE中存在一个bug,在取消选中复选框之前,它不会触发
onchange

您可以尝试以下方法:

$('input[type=checkbox]').click(function(){
$(this).attr("class","newclass");
});
使用新的
背景色和
边框定义
.newclass

还是这个

 $('input[type=checkbox][checked]').click(function(){
 $(this).addClass("newclass"); 
 });
或者,您可以手动添加css,方法是将$this part替换为:

$(this).css("background-color", "#000");
$(this).css("border", "1px solid #000");

jQuery有很多方法

谢谢,我正在使用xhtml,从我以前从事的项目中复制了一些以前的复选框代码。将删除它。它是一个接受条款框,因此只需单击一次。但是,更进一步,如果它未被选中,我能做些什么来还原它呢?在函数add if(this.checked){/*set styles/}或者{/remove styles*/}中,这是一个令人惊讶的彻底答案,即使我没有启用JS的头脑也能理解,非常感谢!注意:中不支持
addEventListener
IE@bobince的确,我们可以使用类似于
document.observe('focusin',function(){})的东西+1:P
 $('input[type=checkbox][checked]').click(function(){
 $(this).addClass("newclass"); 
 });
$(this).css("background-color", "#000");
$(this).css("border", "1px solid #000");