javascript - HTML 复选框的状态无法在浏览器中呈现

标签 javascript jquery html

这是我的js代码:

<script type="text/javascript">
    $(document).ready(function(){
        $("button").click(function(){
            if($("#a").attr("checked")){
                $("#a").attr("checked",false);
            }else{
                $("#a").attr("checked",true);
            }
        })
    })
</script>

这是我的 html 代码:

<input type="checkbox"  id="a">
<button>123</button>

我点击浏览器上的按钮,复选框只能在第一次和第二次切换状态。

但是我不认为attr()的问题,我之前有一些代码可以正确运行。

  $("#delete").click(function(){
        if($("input[name='del_id[]']").attr("checked")){
            $("input[name='del_id[]']").attr("checked",false);
        }else{
            $("input[name='del_id[]']").attr("checked",true);
        }
    });

有人可以帮助我吗?

最佳答案

使用prop()而不是attr()就像,

$("button").click(function () {
   $("#a").prop("checked", !$('#a').prop('checked'));
});

Demo

关于javascript - HTML 复选框的状态无法在浏览器中呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19828408/

相关文章:

javascript - 有什么方法可以沿着 Google Directions 路线前进 X 分钟?

javascript - this.state.items.map 不是函数

javascript - 滚动 x 量后,粘性导航栏不会到达顶部

html - 水平时间线缺少点

javascript - Jssor 元素符号导航器未出现

javascript - 是什么原因导致 Blogspot 中的 Google+ 评论在某些页面上不起作用?

javascript - 获取函数外部变量的值

javascript - HTML 中框架集的最佳 JS 替代品是什么

javascript - jQuery - 在图像之间随机播放

html - border radius + overflow hidden + inner element (progress bar) 使锯齿状边缘伪影