窗簾、壁紙、壁貼專業製作
款式獨特,網友一致好評
搬家公司防盜鋁門窗、落地窗、鋁門
專業施工,價優實在,依所需完整規劃

首頁  •  j2h 論壇 • 程式設計討論     • 

[JQuery] jQuery對select tag的操作

房東:小強
發表時間:2011-04-30


jQuery對select tag的操作



 





  • get


    • 取出選擇的值

      $("select#Club").val();

      $('select#Club option:selected').text();


      以上2方法在單選時相同,但複選時,

      val()會用逗號分開 ex. AA, BB

      text()不會 ex. AABB

    • 取出array

      $("select#Club").children("[@selected]").each(function(){

          alert(this.text());

      });



  • set


    • 使某option變為selected

      $("#select1").children().each(function(){

          if ($(this).text()=="option you want"){

              //jQuery給法

              $(this).attr("selected","true"); //或是給selected也可



              //javascript給法

              this.selected = true;

          }

      });

    • 讓新增的option直接為selected

      var option = jQuery("new option");

      $('
      select#Club').append(option);

      $(option).attr("selected","true"); //讓option為selected

      $('
      select#Club').trigger("change"); //最後要觸發select的change事件


    • select下拉框的第二個元素為當前選中值

      $('select#Club')[0].selectedIndex = 1;//不知為何要加[0]

      =========== K. T. Chen 提到 ==========================

      在$("")加[0]的意思是把jQuery物件轉為DOM物件。這樣子jQuery物件才能使用DOM底下的selectedIndex方法。



  • event

    //改變時的事件

    $("select#Club").change(function(){ //事件發生

        //一次印出

        alert($(this).val());



        //印出選到多個值

        jQuery('option:selected', this).each(function(){

            alert(this.value);

        });

    });

  • 移除

    removeOption(index/value/regex[, selectedOnly])

    $('select#Clubs option:selected').remove();






//純javascirpt

<select onchange="alert('Index: ' + this.selectedIndex

+ '\nValue: ' + this.options[this.selectedIndex].value)">

...

</select>



參考





  • 贊助網站       

    廣利不動產-新板特區指名度最高、值得您信賴的好房仲
    您的托付,廣利用心為您服務
    廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲
    完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心!

  • 1 樓住戶:阿美
    發表時間:2011-05-10

    $.getJSON("javascript/visited_states.txt", { userid: "20001" }, function(data) {
    $.each(data.states, function(i, state) {
    $("

    2 樓住戶:小凱
    發表時間:2011-05-14

    $("").appendTo("body");
    //直接用val("...")可以選取特定value的選項
    var s1 = $("#s1").val(2);
    //val()可以取得選取項的值,find(":selected").text()則可得選取項的文字
    //直接text()會傳回所有選項的文字大串連,不要誤用
    alert(s1.val() + "." + s1.find(":selected").text());
    //面對多選式select也不是問題,例如切成multiple,並選取所有選項
    s1.attr({ "multiple":"true", size:"3" }).find("option")
    .each(function() { this.selected = true; });
    //薑 薑 薑 薑~~~ val()傳回的可是字串陣列呢!
    var a = s1.val();
    if ($.isArray(a)) alert(a.join(","));
    //要選取特定選項,傳陣列進去就搞定了
    a = ["2", "3"];
    s1.val(a);



     共 2 人回應  選擇頁數 【第1 頁】 

    姓名:
    佈告內容:
    其他選項: