JS多選框選中與取消解析

一、js多選框選中與取消

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

  <input type="checkbox" id="checkbox1" name="checkbox1" />
  <input type="checkbox" id="checkbox2" name="checkbox2" />
  <input type="checkbox" id="checkbox3" name="checkbox3" />

  <script>
    // js代碼
    var checkbox1 = document.getElementById("checkbox1");
    var checkbox2 = document.getElementById("checkbox2");
    var checkbox3 = document.getElementById("checkbox3");

    checkbox1.checked = true;  //選中
    checkbox2.checked = false; //取消選中
  </script>

以上代碼中,我們使用了getElementById方法獲取了三個多選框的引用,然後在js代碼中對其進行了選中和取消選中操作。checkbox.checked屬性代表該多選框是否被選中,true代表選中,false代表未選中。

二、js多選框默認選中事件

在實際開發中,我們可能需要對多選框進行默認選中操作。在html中,我們可以通過在多選框的input標籤中添加checked屬性來進行默認選中。下面是示例代碼:

  <input type="checkbox" id="checkbox1" name="checkbox1" checked />
  <input type="checkbox" id="checkbox2" name="checkbox2" />
  <input type="checkbox" id="checkbox3" name="checkbox3" checked />

  <script>
    // js代碼
    var checkbox1 = document.getElementById("checkbox1");
    var checkbox2 = document.getElementById("checkbox2");
    var checkbox3 = document.getElementById("checkbox3");

    // 選中和取消選中代碼同上
  </script>

上面代碼中,我們在checkbox1和checkbox3多選框的input標籤中添加了checked屬性,表示這兩個多選框默認選中。通過js代碼獲取到多選框引用後,對其進行選中和取消選中操作,與前面示例代碼中一致。

三、js獲取多選框選中的值

在表單提交時,我們可能需要獲取多選框選中的值,這個時候我們需要用到js。下面是示例代碼:

  <input type="checkbox" id="checkbox1" name="fruit" value="apple" /> 
  <label for="checkbox1">蘋果</label>
  <input type="checkbox" id="checkbox2" name="fruit" value="banana" /> 
  <label for="checkbox2">香蕉</label>
  <input type="checkbox" id="checkbox3" name="fruit" value="orange" /> 
  <label for="checkbox3">橘子</label>

  <button onclick="getChecked()">獲取選中值</button>

  <script>
    // js代碼
    function getChecked() {
      var checkbox = document.getElementsByName("fruit");
      var result = [];

      for (var i = 0; i < checkbox.length; i++) {
        if (checkbox[i].checked) {
          result.push(checkbox[i].value);
        }
      }

      alert(result.join(",")); //輸出選中結果
    }
  </script>

上面代碼中,我們通過getElementsByTagName方法獲取了name屬性為”fruit”的多選框,並使用for循環來遍歷每個多選框,如果該多選框被選中,則將其value值加入到result數組中。最後使用alert函數輸出選中結果。

四、js控制複選框取消選中

我們可能需要在某些情況下,控制某個多選框不被選中。下面是示例代碼:

  <input type="checkbox" id="checkbox1" name="checkbox1" />
  <input type="checkbox" id="checkbox2" name="checkbox2" />
  <input type="checkbox" id="checkbox3" name="checkbox3" />

  <button onclick="uncheck()">取消選中</button>

  <script>
    // js代碼
    function uncheck() {
      var checkbox2 = document.getElementById("checkbox2");
      checkbox2.checked = false;
    }
  </script>

上面代碼中,我們使用getElementById方法獲取了checkbox2的引用,並在js代碼中對其進行了取消選中的操作。

五、js單選框取消選中

與多選框不同,單選框一次只能選中一個選項,在選中一個選項之後,其他選項應該自動取消選中。下面是示例代碼:

  <input type="radio" name="gender" value="male" checked />
  <label>男</label>
  <input type="radio" name="gender" value="female" />
  <label>女</label>

  <script>
    // js代碼
    var radio = document.getElementsByName("gender");

    for (var i = 0; i < radio.length; i++) {
      radio[i].onclick = function() {
        for (var j = 0; j < radio.length; j++) {
          if (radio[j] != this) {
            radio[j].checked = false;
          }
        }
      }
    }
  </script>

上面代碼中,我們使用getElementsByName方法獲取了name屬性為”gender”的兩個單選框,然後使用for循環遍歷每個單選框。在遍歷的過程中,我們給每個單選框綁定了一個onclick事件,當該單選框被點擊時,使用for循環遍歷除該單選框之外的其他單選框,並將其取消選中。

六、js獲取多選框是否選中

在某些情況下,我們需要通過js代碼來獲取多選框的選中狀態,判斷其是否被選中。下面是示例代碼:

  <input type="checkbox" id="checkbox1" name="checkbox1" checked />
  <input type="checkbox" id="checkbox2" name="checkbox2" />
  <input type="checkbox" id="checkbox3" name="checkbox3" />

  <button onclick="getStatus()">獲取狀態</button>

  <script>
    // js代碼
    function getStatus() {
      var checkbox1 = document.getElementById("checkbox1");
      var checkbox2 = document.getElementById("checkbox2");
      var checkbox3 = document.getElementById("checkbox3");

      alert(checkbox1.checked); // true
      alert(checkbox2.checked); // false
      alert(checkbox3.checked); // false
    }
  </script>

上面代碼中,我們使用getElementById方法獲取了三個多選框的引用,並在js代碼中通過checkbox.checked屬性來獲取多選框的狀態。

七、js設置多選框不選中

有時候,我們需要通過js代碼來將多選框恢復到未選中狀態。下面是示例代碼:

  <input type="checkbox" id="checkbox1" name="checkbox1" checked />
  <input type="checkbox" id="checkbox2" name="checkbox2" checked />
  <input type="checkbox" id="checkbox3" name="checkbox3" checked />

  <button onclick="uncheckAll()">全部取消</button>

  <script>
    // js代碼
    function uncheckAll() {
      var checkbox = document.getElementsByName("checkbox");

      for (var i = 0; i < checkbox.length; i++) {
        checkbox[i].checked = false;
      }
    }
  </script>

上面代碼中,我們使用getElementsByName方法獲取了name屬性為”checkbox”的所有多選框,並使用for循環遍歷每個多選框,將其設置為未選中狀態。

八、js取消checkbox選中

除了多選框和單選框,我們還有一種常用的表單控制項是checkbox,它也需要經常進行選中和取消選中的操作。下面是示例代碼:

  <input type="checkbox" id="checkbox" />

  <button onclick="uncheck()">取消選中</button>

  <script>
    // js代碼
    function uncheck() {
      var checkbox = document.getElementById("checkbox");
      checkbox.checked = false;
    }
  </script>

上面代碼中,我們使用getElementById方法獲取了checkbox的引用,並在js代碼中將其設置為未選中狀態。

九、js取消radio選中

和多選框一樣,我們也需要對單選框進行取消選中操作。下面是示例代碼:

  <input type="radio" id="radio1" name="radio" value="male" checked />
  <label for="radio1">男</label>
  <input type="radio" id="radio2" name="radio" value="female" />
  <label for="radio2">女</label>

  <button onclick="uncheck()">取消選中</button>

  <script>
    // js代碼
    function uncheck() {
      var radio = document.getElementsByName("radio");

      for (var i = 0; i < radio.length; i++) {
        if (radio[i].checked) {
          radio[i].checked = false;
        }
      }
    }
  </script>

上面代碼中,我們使用getElementsByName方法獲取了name屬性為”radio”的所有單選框,並使用for循環遍歷每個單選框,將其設置為未選中狀態。

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

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2025-01-01 11:06
下一篇 2025-01-01 11:06

相關推薦

  • JS Proxy(array)用法介紹

    JS Proxy(array)可以說是ES6中非常重要的一個特性,它可以代理一個數組,監聽數據變化並進行攔截、處理。在實際開發中,使用Proxy(array)可以方便地實現數據的監…

    編程 2025-04-29
  • 解析js base64並轉成unit

    本文將從多個方面詳細介紹js中如何解析base64編碼並轉成unit格式。 一、base64編碼解析 在JavaScript中解析base64編碼可以使用atob()函數,它會將b…

    編程 2025-04-29
  • Node.js使用Body-Parser處理HTTP POST請求時,特殊字元無法返回的解決方法

    本文將解決Node.js使用Body-Parser處理HTTP POST請求時,特殊字元無法返回的問題。同時,給出一些相關示例代碼,以幫助讀者更好的理解並處理這個問題。 一、問題解…

    編程 2025-04-29
  • t3.js:一個全能的JavaScript動態文本替換工具

    t3.js是一個非常流行的JavaScript動態文本替換工具,它是一個輕量級庫,能夠很容易地實現文本內容的遞增、遞減、替換、切換以及其他各種操作。在本文中,我們將從多個方面探討t…

    編程 2025-04-28
  • JS圖片沿著SVG路徑移動實現方法

    本文將為大家詳細介紹如何使用JS實現圖片沿著SVG路徑移動的效果,包括路徑製作、路徑效果、以及實現代碼等內容。 一、路徑製作 路徑的製作,我們需要使用到SVG,SVG是可縮放矢量圖…

    編程 2025-04-27
  • 如何使用JS調用Python腳本

    本文將詳細介紹通過JS調用Python腳本的方法,包括使用Node.js、Python shell、child_process等三種方法,以及在Web應用中的應用。 一、使用Nod…

    編程 2025-04-27
  • 如何反混淆美團slider.js

    本文將從多個方面詳細闡述如何反混淆美團slider.js。在開始之前,需要明確的是,混淆是一種保護JavaScript代碼的方法,其目的是使代碼難以理解和修改。因此,在進行反混淆操…

    編程 2025-04-27
  • Python要學JS嗎?

    Python和JavaScript都是非常受歡迎的編程語言。然而,你可能會問,既然我已經學了Python,是不是也需要學一下JS呢?在本文中,我們將圍繞這個問題進行討論,並從多個角…

    編程 2025-04-27
  • 解決js ajax post 419問題

    對於使用ajax post請求時出現的419問題,我們需要進行以下幾個方面的闡述,包括返回碼的含義、可能出現的情況、解決方案等內容。 一、解析419返回碼 419返回碼錶示用戶超時…

    編程 2025-04-27
  • Three.js實現室內模型行走

    在本文中,將介紹如何使用Three.js創建室內模型,並在場景中實現行走。為了實現這一目標,需要完成以下任務: 載入室內模型及材質貼圖 實現攝像機控制,支持用戶自由行走 添加光源,…

    編程 2025-04-25

發表回復

登錄後才能評論