`
zljpp
  • 浏览: 260089 次
社区版块
存档分类
最新评论

一个简单的全选Jquery插件

阅读更多

在实际开发中全选操作会经常用到,这里简单的写了个Jquery的全选插件,方便以后直接调用

/* 
* jQuery lightweight plugin CheckAll 
* Original author: Suifengshiqu 
* Further changes, comments: lvbo1988@gmail.com 
*/  
  
/* 表格全选插件 */  
  
/* 使用方法 */  
/* 
    $("#tab").CheckAll({ valueField: "txtTest", chkId: "chkall", splitExp: "|", valueIndex: 0 }); 
*/  
  
(function ($) {  
    $.fn.extend({  
        CheckAll: function (options) {  
            var defaults = {  
                valueField: null,   //默认选中后的赋值字段  
                chkId: "c_all",     //全选框的Id  
                splitExp: "_",      //字段分隔符号  
                valueIndex: 1       //分割后取值的索引下标  
            };  
            var options = $.extend(defaults, options);  
            obj = $(this); //默认为table  
            function _getSelectedValue() {  
                var values = "";  
                $("#" + obj.attr("Id") + " :checked").each(function () {  
                    if ($(this).attr("id") != options.chkId) {  
                        values += $(this).attr("id").split(options.splitExp)[options.valueIndex] + ",";  
                    }  
                });  
                if (values.length > 0)  
                    return values.substring(0, values.length - 1);  
                return values;  
            }  
            return this.each(function () {  
                var subExp = "#" + obj.attr("Id") + " :checkbox";  
                var chks = $(subExp + ":gt(0)");  
                var checkedCount = 0;  
                chks.each(function () {  
                    $(this).click(function () {  
                        if ($(this).attr("checked")) {  
                            checkedCount += 1;  
                        } else {  
                            checkedCount -= 1;  
                        }  
                        if (checkedCount < chks.length) {  
                            $("#" + options.chkId).attr("checked", false);  
                        } else {  
                            $("#" + options.chkId).attr("checked", true);  
                        }  
                        $("#" + options.valueField).val(_getSelectedValue());  
                    });  
                });  
                $("#" + options.chkId).click(function () {  
                    $(subExp).attr("checked", $(this).attr("checked") ? true : false);  
                    $("#" + options.valueField).val(_getSelectedValue());  
                });  
            });  
        }  
    });  
})(jQuery);  



页面调用如下:
[html] view plaincopy
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml">  
<head>  
    <title></title>  
    <script src="Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>  
    <script src="Scripts/jquery.CheckAll.js" type="text/javascript"></script>  
    <script type="text/javascript">  
        $(document).ready(function () {  
            $("#tab").CheckAll({ valueField: "txtTest" });  
        });  
    </script>  
</head>  
<body>  
    <table id="tab">  
        <tr>  
            <td><input type="checkbox" id="c_all" /></td>  
        </tr>  
        <tr>  
            <td><input type="checkbox" id="c_1" /></td>  
        </tr>  
        <tr>  
            <td><input type="checkbox" id="c_2" /></td>  
        </tr>  
        <tr>  
            <td><input type="checkbox" id="c_3" /></td>  
        </tr>  
        <tr>  
            <td><input type="checkbox" id="c_4" /></td>  
        </tr>  
    </table>  
    <input type="text" id="txtTest" />  
    <span onclick="alert(txtTest.value);">查看选中项</span>  
</body>  
</html>  
 
分享到:
评论

相关推荐

    jquery全选反选插件

    例如,一个常见的插件API可能是`$('selector').getSelect('selectAll')`来全选所有匹配的复选框,而`$('selector').getSelect('selectNone')`则会取消它们的选中状态。此外,插件可能还包括一些自定义事件,如`...

    JQuery插件之全选与反选

    本主题将深入探讨jQuery中的"全选"与"反选"功能,这是一个常见且实用的功能,尤其是在处理多选框(Checkbox)的场景中。 全选与反选功能在用户界面设计中十分常见,例如在批量选择数据项、同意服务条款或选择订阅...

    jQuery插件-多选全选实时搜索下拉框

    "jQuery插件-多选全选实时搜索下拉框"就是这样一个工具,它结合了多选、全选以及实时搜索的功能,极大地优化了用户在选择项时的操作体验。 **一、jQuery基础知识** jQuery是由John Resig于2006年创建的,它的核心...

    一个基于jQuery 实现的的全选、反选复选框插件源码例子

    jQuery插件的创建通常包括一个自定义函数,该函数接受参数并返回一个新的jQuery对象。这个函数内部会定义一些方法和事件处理器。例如: ```javascript (function($) { $.fn.extend({ checkboxSelect: function...

    小测试:jquery的全选插件

    标题中的“小测试:jquery的全选插件”暗示了我们即将探讨的是一个基于jQuery的全选功能实现,这在Web开发中非常常见,尤其是在处理表格或者多选列表时。全选插件允许用户一键选择所有选项,提高用户体验。jQuery是...

    jquery插件库-jquery添加购物车复选框,全选,反选,取消商品数量统计.zip

    这个"jquery插件库-jquery添加购物车复选框,全选,反选,取消商品数量统计.zip"文件包含了一个专门针对购物车功能的jQuery插件,用于实现复选框的操作,如全选、反选和商品数量的统计。 1. **jQuery插件**:jQuery...

    jQuery表单全选插件baigoCheckall 0.1.0.zip

    baigoCheckall是一款jQuery表单全选插件。文件结构:1.baigoCheckall.js 全选插件2.jquery.min.js3.demo.html 演示案例4.readme.txt 使用说明

    jquery复选框_全选_反选_取消_选中输出等功能用jquery特效和jquery插件两种表单特效

    - 这里定义了一个XHTML文档的基本结构,引入了jQuery库和一个名为`jquery.checkbox.js`的jQuery插件文件。 ##### 2. jQuery特效实现 - **全选功能** ```javascript $("#allselect").click(function(){ $("....

    jQuery下拉框可搜索 全选反选插件ASelect.js.zip

    总结,ASelect.js是jQuery生态中的一个优秀插件,通过它我们可以轻松地在下拉框中实现搜索、全选和反选等功能,提升用户交互体验。正确理解和使用这个插件,能够为我们的网页开发带来极大的便利。

    jquery插件--表格分页

    1. jQuery简介:jQuery是由John Resig创建的一个轻量级的JavaScript库,它的目标是使JavaScript编程变得更加简单。jQuery提供了一种简洁的API,让DOM操作、事件处理、动画制作和Ajax交互变得容易。 2. 表格分页概念...

    jQuery 的全选、反选插件

    此外,为了提高可维护性和重用性,可以将这部分逻辑封装成一个jQuery插件,这样在多个页面或项目中都可以方便地使用。 压缩包中的"okbase.net"可能包含了一个实际的示例代码或插件实现,你可以解压后查看具体代码,...

    jQuery 插件 表格高亮显示选中行 全选、反选(四种模式)

    在本文中,我们将深入探讨如何使用jQuery插件来实现表格中的行高亮显示以及全选、反选功能。这个插件特别适用于数据展示和交互性强的网页应用,它提供了四种不同的工作模式,使得用户可以更加方便地管理和操作表格...

    jquery Checkbox 全选 反选 全不选 多种实现方法

    在网页开发中,jQuery 是一个广泛使用的 JavaScript 库,它简化了 DOM 操作、事件处理以及Ajax交互等任务。在涉及到表单元素如复选框(Checkbox)时,经常需要实现全选、反选和全不选的功能。下面将详细探讨 jQuery ...

    jquery插件

    在这个“jquery插件全选 反选”压缩包中,我们可以看到它包含了用于实现全选和反选功能的插件,这对于构建数据表格或者多选项选择器时非常实用。 全选和反选功能在用户界面设计中常见于需要批量操作的场景,比如...

    部门选择控件(jquery插件)

    "部门选择控件(jquery插件)"就是这样一个工具,它专门用于帮助开发者创建具有高效用户体验的部门选择功能,适用于组织架构庞大、层级复杂的公司环境。 jQuery是一个广泛使用的JavaScript库,它简化了HTML文档遍历...

    支持单选多选全选的jQuery房屋楼层选择代码.zip

    标题中的“支持单选多选全选的jQuery房屋楼层选择代码”表明这是一个使用jQuery实现的交互式房屋楼层选择器,它具有单选、多选和全选功能。这个选择器可能用于房地产网站或者任何需要用户从一系列房屋或楼层中进行...

    Jquery多选下拉列表插件jquery multiselect

    jQuery Multiselect插件通常与其他jQuery插件或框架(如Bootstrap)兼容良好。此外,它也支持大部分现代浏览器,包括Chrome、Firefox、Safari、Edge以及IE9及以上版本。 总之,jQuery Multiselect是一个强大且灵活...

    jQuery表格行全选反选单选代码.zip

    tableCheckbox.js是一个专门为此目的设计的jQuery插件。它扩展了基础的jQuery功能,为表格添加了行级别的复选框操作。这个插件通常包括以下关键特性: 1. **行选中与反选**:当用户点击表格行时,插件会检测并更改...

    jquery.multiselect 下拉多选插件 下拉复选框插件

    jQuery Multiselect插件,正如其名,为开发者提供了一个功能强大的下拉多选解决方案,它使得复选框在有限的空间内展现得既美观又实用。这个插件不仅提升了用户体验,同时也简化了开发者的代码实现,让复杂的多选功能...

    Jquery插件下拉复选multiSelect使用

    《jQuery插件multiSelect使用详解》 在网页开发中,我们常常会遇到需要处理大量选项的情况,例如用户需要从一个长长的列表中选择多个项目。这时,传统的多选下拉框可能就显得不够用了,因为它通常只能展示有限的几...

Global site tag (gtag.js) - Google Analytics