如何在选中的属性更改之前触发onclick事件?

时间:2011-08-19 06:39:00

标签: javascript javascript-events

简单示例:

<input type="checkbox" id="cb" />   

document.getElementById("cb").onclick = function(){
    if(this.checked){
        console.log("Change from checked to unchecked");
    } else {
        console.log("Change from unchecked to checked");         
    }
};  

但是当我运行它时,它会给出对手的结果 我得出的结论是在checked事件被触发之前onclick属性更改 所以我的问题是:如何在onclick属性更改之前触发checked事件?

2 个答案:

答案 0 :(得分:0)

您必须使用onchange事件而不是onclick

<强>更新

您的如果条件错误,当选中该控件时,您显示从已选中更改为未选中

答案 1 :(得分:0)

<input type="checkbox" id="cb" />   

document.getElementById("cb").onchange = function(){
    if(this.checked){
        console.log("Change from unchecked to checked");
    } else {
        console.log("Change from checked to unchecked");         
    }
};