检查框有问题

时间:2014-05-11 03:07:38

标签: javascript checkbox conditional

我为公司和员工创建了一系列复选框。我喜欢在选择公司时,所有用户都会被检查。我的问题是条件 - 每当我点击代码运行的复选框,无论是否检查。显然,当复选框被选中时,id才会像sun一样,而不是在取消选中时。我认为“this”指的是设置了“onClick”事件的复选框。谢谢。

function checkCompAll(comp) {
    // if the the company checkbox is selected...
if (this.checked=true){
    // query all inputs and select only check boxes with the name "userlogrestrict" and this companies id number in them.  Return an array
    // named "checkboxes"
    var thiscompusers = "userlogrestrict_"+comp;
    var checkboxes = new Array();
    var elems = document.newlog.elements;
    var len = elems.length;

    for ( var i = 0; i < len; i++ ) {

        if (elems[i].type === 'checkbox') {
            var thischeckbox = elems[i].name.split("_");
                if ((thischeckbox[0] == "userlogrestrict")&&(thischeckbox[1] == comp)){
                    checkboxes.push(elems[i]);
                }

        }
    }

    console.log(checkboxes);

} // end the if 

}

感谢您的帮助。是的,= vs ==是一个问题,并将复选框指定为true。另一个问题是我不知道函数是否清楚“this”是什么。我在函数调用中添加了“this” - 它告诉函数复选框的名称是什么 - 现在它可以正常工作。谢谢你的帮助。

1 个答案:

答案 0 :(得分:0)

在if条件下,您使用=代替==

=是赋值运算符,仅用于赋值

  if (this.checked==true){

一旦你解决了它将会起作用