问答

jquery input父元素设置点击选择事件,点击input无法选择

作者:admin 2021-04-19 我要评论

span class="main_span"input type="checkbox"/避孕套/span 为了实现点击span范围内都能勾选,同时不想用label,选择给span添加点击事件 $('.main_span').on('cl...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)
<span class="main_span"><input type="checkbox"/>避孕套</span>

image.png

为了实现点击span范围内都能勾选,同时不想用label,选择给span添加点击事件

$('.main_span').on('click',function(e){ // 全选功能
            let self = this
            if ($(self).find('input').is(':checked')) {
                $(self).find('input').prop('checked', false)
            } else{
                $(self).find('input').prop('checked', true)
            }
        })

问题是:
此时点击span中的文字(即避孕套三个字),可以实现选择和取消选择功能
image.png
但是点击input框的时候却没有反应了
把函数中的if代码注释掉,则input框正常了,怀疑是不是设置的效果与input本身的点击事件有所冲突,现在不知道该如何解决。

###
const $input = $(this).find('input')
$input.prop('checked', ! $input.prop('checked'))

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • nginx响应速度很慢

    nginx响应速度很慢

  • 点击选中的多选框,会在已选那一栏显示

    点击选中的多选框,会在已选那一栏显示

  • PHP 多态的理解

    PHP 多态的理解

  • 关于C语言中static的问题

    关于C语言中static的问题

腾讯云代理商
海外云服务器