javascript - jQuery 选择复选框

标签 javascript jquery checkbox

当用户单击图像时,我使用 jquery 打开和关闭复选框。

这是我的代码:

function clickimage(e){
    chkbox = e.parent().children('.chkBox');
    if(chkbox.is(":checked")){
        chkbox.attr('checked', false);
    }else{
        chkbox.attr('checked', true);
    }
}

当我第一次单击图像时,复选框会被选中。当我再次单击图像时,该复选框被取消选中。但问题是,此后,该复选框将永远不会再次被选中。

我尝试验证 chkbox.is(":checked") 并且它确实返回 false 值。我把检查代码放在 chkbox.attr('checked', true); 之后,它也返回 false 值。

为什么会这样?我该如何修复它?

谢谢。

最佳答案

这样做:

function clickimage(e){
    chkbox = e.parent().children('.chkBox');
    if(chkbox.is(":checked")){
        chkbox.prop('checked', false);
    }else{
        chkbox.prop('checked', true);
    }
}

您应该使用 .prop() 而不是 .attr()

关于javascript - jQuery 选择复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23043410/

相关文章:

android - 将CheckBox添加到ListView行 View 使该行不可点击

javascript - JavaScript 函数中的 onclick

javascript - Angular js 不会在已选中的复选框上触发更改事件

javascript - 错误 : Audio playback was aborted IE 11 Windows 7

javascript - 只显示特定的json信息

jQuery 切换 DIV 元素 href 点击

javascript - 默认勾选,如果不勾选则保持不勾选

javascript - JavaScript中的依赖倒置原则

javascript - 我应该将自定义 javascript 对象放置在哪里?

jquery - 折叠 jquery checkboxtree 中的所有树