在没有 jQuery 的情况下切换复选框选中属性 [重复]

Posted

技术标签:

【中文标题】在没有 jQuery 的情况下切换复选框选中属性 [重复]【英文标题】:Toggle checkbox checked attribute without jQuery [duplicate] 【发布时间】:2018-04-25 01:43:50 【问题描述】:

我见过类似的问题,例如“How do I toggle an element's class in pure javascript?”,但是这个问题是指属性。

我有一个这样的复选框:

<span class="newsletter-checkbox">
  <input type="checkbox" name="newsletter" id="newsletter" checked> Sign up to the newsletter as well - recieve new posts in your inbox
</span>

如何做到这一点,以便在单击.newsletter-checkbox 中的任何位置(包括文本)时,它会切换复选框checked 属性?

【问题讨论】:

我可以建议一些非常简单的东西,只需使用标签标签:jsfiddle.net/wggofhhf 吗? @sinisake 哇,太棒了,我从来没有意识到你能做到这一点!让它成为一个答案,我现在就接受...... ***.com/a/12850547/295783 【参考方案1】:

只需使用这个:

function toggleCheckbox() 
  var checkbox = document.getElementById('newsletter');
  checkbox.checked = !checkbox.checked;
&lt;span class="newsletter-checkbox" onclick="toggleCheckbox()"&gt;&lt;input type="checkbox" name="newsletter" id="newsletter" checked&gt; Sign up to the newsletter as well - recieve new posts in your inbox&lt;/span&gt;

(基于Toggle a boolean in javascript)

【讨论】:

以上是关于在没有 jQuery 的情况下切换复选框选中属性 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

jQuery实现复选框的全选与全不选

复选框仍然选中点击后退按钮,但它没有“选中”属性

jQuery是复选框上的属性更新未触发更改事件

Jquery - 问题切换复选框[重复]

jquery复选框选中的属性和三元运算符[重复]

如何使用 JavaScript 或 jquery 选中/取消选中复选框?