1. 程式人生 > >jquery 操作 select 默認選擇第一個元素

jquery 操作 select 默認選擇第一個元素

tar easy eset 思路 blog reset function 標簽 數組元素

  問題:點擊按鈕設置select元素的默認選項。

  首先,有個環境,並引入jquery。

<!DOCTYPE html>
<html>
    <head>
        <meta charset=‘utf-8‘>
        <script src=‘jquery-1.11.3.js‘></script>
    </head>
    <body>
        <select id=‘s1‘ class=‘selector‘>
            <option
>1</option> <option>2</option> <option>3</option> <option>4</option> </select> <select id=‘s2‘ class=‘selector‘> <option>1</option> <option>2</option
> <option>3</option> <option>4</option> </select> <button onclick=‘resetValue()‘>click me to reset select value</button> <script> function resetValue () { } </script
> </body> </html>

  接下來就要寫方法了,其實思路很好懂,使用 jquery 也很 easy 來實現:

  1、首先找到 select 元素,這裏我們給他一個 class 方便查找。

var selectArr = $(‘.selector‘);

  2、找到這個 select 數組後,通過 jquery 的 each() 方法進行遍歷。第一個參數是下標位置,第二個參數是數組元素。

selectArr.each(function (i, j) {

})

  3、對於每個select元素,我們需要做的是對其下的第一個 option 標簽進行設置選中

var options = $(j).find("option");
options.first().attr("selected", true);

  4、打開頁面,點點,咦,怎麽有點問題?哈,在設置選中前,要將之前選中項置 false。這裏我就全 false 一下方便。

options.attr("selected", false);

  完成啦!

  最終方法內容:

function resetValue () {
    $(‘.selector‘).each(function (i, j) {
        var options = $(j).find("option");
        options.attr("selected", false);
        options.first().attr("selected", true);
    })
}

  再來簡化下(將之前選中項置 false):

function resetValue () {
    $(‘.selector‘).each(function (i, j) {
        $(j).find("option:selected").attr("selected", false);
        $(j).find("option").first().attr("selected", true);
    })
}

jquery 操作 select 默認選擇第一個元素