inputcheckbox:一個全能的多選框

一、基本用法

inputcheckbox是HTML5提供的一個多選框元素,可以通過設置type屬性為checkbox來創建。

<input type="checkbox" name="fruit" value="apple"> 蘋果
<input type="checkbox" name="fruit" value="banana"> 香蕉
<input type="checkbox" name="fruit" value="orange"> 橙子

上述代碼中,name屬性設置了多個多選框的分組屬性,value屬性設置了每個多選框對應的值。

當需要默認選中某些多選框時,可以通過在checked屬性設置為true來實現:

<input type="checkbox" name="fruit" value="apple" checked> 蘋果
<input type="checkbox" name="fruit" value="banana"> 香蕉
<input type="checkbox" name="fruit" value="orange" checked> 橙子

二、全選與取消全選

經常情況下,我們需要在一組多選框中設置全選和取消全選的功能。這可以通過兩個操作分別來實現:

<input type="checkbox" id="check-all"> 全選
<input type="checkbox" name="fruit" value="apple" class="check-one"> 蘋果
<input type="checkbox" name="fruit" value="banana" class="check-one"> 香蕉
<input type="checkbox" name="fruit" value="orange" class="check-one"> 橙子
$(function(){
    $("#check-all").click(function(){
        $(".check-one").prop("checked", $(this).prop("checked"));
    });
    $(".check-one").click(function(){
        if($(this).prop("checked") == false){
            $("#check-all").prop("checked", false);
        }
        else if($(".check-one:checked").length == $(".check-one").length){
            $("#check-all").prop("checked", true);
        }
    });
});

通過上述JavaScript代碼,當用戶點擊全選的多選框時,通過遍歷頁面中class為check-one的所有多選框,來設置它們的checked屬性。當其中任意一個多選框被取消選中時,取消全選的多選框也相應的取消選中;當全部多選框被選中時,則選擇全選的多選框也相應的選中。

三、多選框的樣式及功能拓展

在實際應用中,經常需要將多選框的樣式進行美化,或者為其添加更加豐富的功能。

1. 美化多選框的樣式

通過CSS樣式來美化多選框的外觀。

.checkbox {
    position: relative;
    display: inline-block;
    padding-left: 25px;
    margin-right: 10px;
    font-size: 14px;
    cursor: pointer;
}
.checkbox input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    border: 1px solid #ccc;
    border-radius: 3px;
}
.checkbox:hover input ~ .checkmark {
    background-color: #ccc;
}
.checkbox input:checked ~ .checkmark {
    background-color: #2196F3;
    border-color: #2196F3;
}
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
.checkbox input:checked ~ .checkmark:after {
    display: block;
}
.checkbox .checkmark:after {
    left: 7px;
    top: 3px;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}

上述樣式設置了多選框的容器樣式以及多選框的樣式,當滑鼠移動到多選框上時,其樣式會發生變化。當多選框選中時,其樣式也會發生變化。




2. 選擇框級聯效果

選擇框級聯效果,即在第一個多選框選定後對之後的多選框進行篩選,換言之,第二個多選框將根據第一個多選框中選中的值來顯示與隱藏。









$(function(){
    $("[name='type1']").click(function(){
        var type1 = $(this).val();
        $(".type2").addClass("hide");
        $(".type2-" + type1).removeClass("hide");
    });
});

當用戶點擊選擇類別1中的某個多選框時,通過遍歷class為type2的所有多選框,來設置其display屬性的不同值來實現級聯效果。

原創文章,作者:DEOUA,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/370349.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
DEOUA的頭像DEOUA
上一篇 2025-04-20 13:09
下一篇 2025-04-20 13:09

相關推薦

  • Switch C:多選結構的利器

    在編寫程序時,我們經常需要根據某些條件執行不同的代碼,這時就需要使用選擇結構。在C語言中,有if語句、switch語句等多種選擇結構可供使用。其中,switch語句是一種非常強大的…

    編程 2025-04-25
  • 小程序多選詳解

    一、小程序多選樣式 小程序多選樣式是指多選框的外觀。多選框可以是方形的、圓形的、帶邊框的、不帶邊框的等等,這些都可以用CSS來實現。 以下是實現一個帶邊框的方形多選框的代碼示例: …

    編程 2025-01-24
  • 下拉框多選詳細闡述

    一、下拉框多選無序 下拉框多選是指在下拉列表框中,可以同時選擇多個選項。其顯示的選項是無序的,可以按照添加的順序顯示或者按照其在數據源中的順序顯示。 需要注意的是,下拉框多選在大多…

    編程 2025-01-14
  • php跨頁多選(php下拉框多選)

    本文目錄一覽: 1、PHP下拉列表分頁 2、關於PHP分頁 3、php下拉列表能多選么 PHP下拉列表分頁 ? $myurl = “index.php” $…

    編程 2025-01-14
  • 如何正確使用Select2多選功能

    一、Select2 多選功能的介紹 Select2 是一個基於 jQuery 的選擇框插件,可以輕鬆定製和增強選擇框。它支持單選、多選、搜索、遠程數據等多種功能,其中多選功能是 S…

    編程 2025-01-13
  • JS多選框選中與取消解析

    一、js多選框選中與取消 在網頁開發中,常用的表單控制項之一是多選框。一般情況下,我們使用滑鼠點擊多選框來進行選中和取消選中操作。但是,在某些情境下,我們需要通過js代碼來進行多選框…

    編程 2025-01-01
  • Python Tkinter複選框:為GUI添加多選功能

    Python的Tkinter庫提供了一種簡單的方法來創建GUI界面。在Tkinter中,複選框是一種常用的控制項,它允許用戶選擇多個選項。在本文中,我們將介紹如何使用Tkinter復…

    編程 2024-12-28
  • 詳解select多選框

    一、select多選框賦值 select多選框也稱作下拉多選框,通過設置option的selected屬性來指定被選中的項。示例代碼如下: 蘋果 橘子 香蕉 梨 以上代碼中,通過設…

    編程 2024-12-28
  • Layui下拉框多選功能實現,提升網頁用戶交互體驗

    一、Layui下拉框多選功能簡介 Layui是一款經典的前端UI框架,擁有豐富的組件和插件。其中下拉框控制項是非常實用的,而多選功能則可以提供更加靈活的交互體驗。通過該功能,用戶可以…

    編程 2024-12-27
  • layui多選框:用途與實現

    layui多選框是一款基於layui框架開發的多選框插件,可以方便地管理多個選擇項,並且支持數據回現功能、自定義多選框樣式等功能。在本文中,我們將對layui多選框進行詳細的解析和…

    編程 2024-12-23

發表回復

登錄後才能評論