div中的复选框在单击时使用jquery 1.9.1选中或未选中 [英] checkbox inside div. On click checked or unchecked using jquery 1.9.1

查看:115
本文介绍了div中的复选框在单击时使用jquery 1.9.1选中或未选中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我单击带文本的div时,我想使复选框处于选中状态或未选中状态.使用jQuery 1.9.1 这是js小提琴的链接

Hi i want to make checkbox checked or unchecked when i click div with text. Using jquery 1.9.1 here is a link to js fiddle

<div class="tel_show">
    <input type="checkbox" name="whatever" />
    &nbsp; visible
</div>

$("div.tel_show").live("click",function(event) {
    var target = $(event.target);
    if (target.is('input:checkbox')) return;

    var checkbox = $(this).find("input[type='checkbox']");

    if( checkbox.attr("checked") == "" ){
        checkbox.attr("checked","true");
    } else {
        checkbox.attr("checked","");
    }
});

js小提琴链接

推荐答案

在jQuery 1.9.x上不建议使用.live(),不建议使用checked html属性切换复选框,请使用.prop('checked')相反,您更新的代码应为:

The use of .live() is deprecated on jQuery 1.9.x , also the use of checked html attribute to toggle checkboxes is deprecated, use .prop('checked') instead, your updated code should be:

$("div.tel_show").on("click",function(event) {
    var target = $(event.target);
    if (target.is('input:checkbox')) return;

    var checkbox = $(this).find("input[type='checkbox']");

    if( !checkbox.prop("checked") ){
        checkbox.prop("checked",true);
    } else {
        checkbox.prop("checked",false);
    }
});

请参见 工作小提琴

这篇关于div中的复选框在单击时使用jquery 1.9.1选中或未选中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆