javascript - 让李选择复选框

标签 javascript jquery html checkbox

我有一个脚本,它会在单击 lispan 时选中一个复选框。我的问题是 li 的宽度比 span 长,因此 li 的一部分没有选中复选框。

$('ul.myclass li span').click( function() {
    var $cb = $(this).parent().find(":checkbox");
    if (!$cb.prop("checked")) {
        $cb.prop("checked", true);
    } else {
        $cb.prop("checked", false);
    }
});
.myclass li span {
  margin-left: 5px;   
}

li {
  background: red;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="myclass">
    <li><input type="checkbox"><span>some text</span></li>
    <li><input type="checkbox"><span>some text</span></li>
    <li><input type="checkbox"><span>some text</span></li>
</ul>

JsFiddle:http://jsfiddle.net/7w82S/89/

最佳答案

使用适当的 HTML <label>元素将文本与 <input> 相关联:

<ul class="myclass">
    <li><label><input type="checkbox"><span>some text</span></label></li>
    <li><label><input type="checkbox"><span>some text</span></label></li>
    <li><label><input type="checkbox"><span>some text</span></label></li>
</ul>

display: block; (对于 <label> 元素的样式)填充它的祖先 <li>所需的行为是自动的,不需要 JavaScript。

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

相关文章:

javascript - jquery mobile,图像周围有一个小黑色边框

javascript - 为什么不应用 ad 元素?

javascript - 使用 underscore.js 遍历值

javascript - 如何避免图像在共享时显示为缩略图

html - 在这种情况下如何计算高度?

javascript - 加载所有异步数据和图像后滚动到 anchor

javascript - 从数组中检索信息并以 html 形式显示的最快方法

javascript - 如何使用 Javascript 列出当前页面的所有 cookie?

javascript - jQuery:是否可以获取 css 值数组?

Javascript:网站上描述框的 onmouseover 功能