我是靠谱客的博主 文静夏天,这篇文章主要介绍点击盒子改变checkbox状态以及在盒子和checkbox嵌套时阻止默认事件冒泡还有将多选框的值转化为0和1,现在分享给大家,希望可以做个参考。

需求是一个多选题 大概是这样
在这里插入图片描述
li里包着的checkbox
因为我觉得移动端就应该点这一大行 就是选中,就给添加了点击这个盒子,checkbox就被选中
页面是这样的

 	<li>
       <input id="game1" type="checkbox" name="game" class="check_input">
       <label for="game1" onclick="stopDefault()"></label>
      <p>bilbalssd</p>
	</li>
 $('.games li').eq(0).click(function () {        
            if ($("#game1[type='checkbox']").prop('checked') == false) {
                $('#game1').prop('checked', true)
            } else {
                $('#game1').prop('checked', false)
            }
        })

本来以为这样就可以了,但我需要获取这个box里的选项,并转为0和1发送给后台
查了下,加上了这些

 $('.games li').eq(0).click(function () {        
            //改变value值
            i = $(this).find('input').val();
            if (i == 0) {
                $(this).find('input').val('1')
            } else {
                $(this).find('input').val('0')
            }
            //点击盒子,改变checkbox状态
            if ($("#game1[type='checkbox']").prop('checked') == false) {
                $('#game1').prop('checked', true)
            } else {
                $('#game1').prop('checked', false)
            }

再给input加上value

 	<li>
       <input id="game1" type="checkbox" name="game" value='0' class="check_input">
       <label for="game1" onclick="stopDefault()"></label>
      <p>bilbalssd</p>
	</li>

但是在精准点击checkbox时,会触发两次这个改变,就出问题了
这时候就要阻止这个checkbox了,不让他被点到,加一个阻止默认事件的方法

给input加上onclick="stopDefault()"

方法

function stopDefault(e) { //console.log(e.preventDefault);  
        //阻止默认浏览器动作(W3C)  
        if (e && e.preventDefault) {
            //alert(e.preventDefault);  
            e.preventDefault();
        } else { //IE中阻止函数器默认动作的方式  
            window.event.returnValue = false;
        }
        return false;
    }

就好了

最后

以上就是文静夏天最近收集整理的关于点击盒子改变checkbox状态以及在盒子和checkbox嵌套时阻止默认事件冒泡还有将多选框的值转化为0和1的全部内容,更多相关点击盒子改变checkbox状态以及在盒子和checkbox嵌套时阻止默认事件冒泡还有将多选框内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部