• jquery attr()方法获取input的checked属性问题


    问题:经常使用jQuery插件的attr方法获取checked属性值,获取的值的大小为未定义,此时可以用prop方法获取其真实值,下面介绍这两种方法的区别:

    1.通过prop方法获取checked属性,获取的checked返回值为boolean,选中为true,否则为flase

    1. <input type="checkbox" id="selectAll" οnclick="checkAll()">全选
    2. function checkAll()
    3. {
    4. var checkedOfAll=$("#selectAll").prop("checked");
    5. alert(checkedOfAll);
    6. $("input[name='procheck']").prop("checked", checkedOfAll);
    7. }


    2.如果使用attr方法获取时,如果当前input中初始化未定义checked属性,则不管当前是否选中,$("#selectAll").attr("checked")都会返回undefined;

    <input type="checkbox" id="selectAll" οnclick="checkAll()" >全选 


    如果当前input中初始化已定义checked属性,则不管是否选中,$("#selectAll").attr("checked")都会返回checked.

    1. <input type="checkbox" id="selectAll" οnclick="checkAll()" checked>全选
    2. function checkAll()
    3. {
    4. var checkedOfAll=$("#selectAll").attr("checked");
    5. alert(checkedOfAll);
    6. $("input[name='procheck']").attr("checked", checkedOfAll);
    7. }


    总结,如果使用jquery,应使用prop方法来获取和设置checked属性,不应使用attr

    简单的全选和取消全选

    1. //全选单选框
    2. function CheckAll(obj) {
    3. if ($(obj).prop("checked")) {
    4. $("#act_list input:checkbox").each(function () {
    5. $(this).prop("checked", true);
    6. });
    7. }
    8. else {
    9. $("#act_list input:checkbox").each(function () {
    10. $(this).prop("checked", false);
    11. });
    12. }
    13. }

    你有困难我帮忙,我住隔壁我姓王。----------------- 你隔壁的老王宣。

  • 相关阅读:
    POJ 2585 Window Pains 拓扑排序
    hrbust 2069 萌萌哒十五酱的衣服~ stl
    CodeForces 785D Anton and School
    CodeForces 816C Karen and Game
    CodeForces 758C Unfair Poll 模拟
    CodeForces 746D Green and Black Tea 有坑
    CodeForces 811C Vladik and Memorable Trip dp
    栈 队列 (面向对象列表实现)
    员工信息表 信息检索(模糊查询)
    员工信息表 查询 周末写(很简单)
  • 原文地址:https://www.cnblogs.com/zhuyeshen/p/11419511.html
Copyright © 2020-2023  润新知