2015-12-23 41 views
0

我想將「全部」選項添加到現有的下拉列表中作爲第一個選項。請幫助我如何將值「select」附加到Select下拉菜單中?

if(own != null) 
{ 
    var ar = own.replace("[","").replace("]","").split(","); 
    var output = $("#status_type"); 
    output.empty(); 

    for(var i=0;i<ar.length/2;i++) 
    { 
     output.append("<option value='" + $.trim(ar[i*2+1]) + "'>" + $.trim(ar[i*2+1]) + "</option>"); 
     //alert ("val " +$.trim(ar[i*2+1])); 
    } 
} 

我想「所有」是在選擇下拉

+2

爲什麼不另做'append'權在'for'循環開始之前? – niksofteng

回答

1

代替empty()使用.html()第一個選項,並通過所有選項的html。這將首先清除select,然後將添加所有選項,然後將添加其他選項,並將爲您節省不必要的.empty()操作。

if(own != null) 
      { 
       var ar = own.replace("[","").replace("]","").split(","); 
       var output = $("#status_type"); 

       output.html('<option value="'+all+'">All</option>'); 

       for(var i=0;i<ar.length/2;i++) 
       { 
        output.append("<option value='" + $.trim(ar[i*2+1]) + "'>" + $.trim(ar[i*2+1]) + "</option>"); 
        //alert ("val " +$.trim(ar[i*2+1])); 
       } 
0

試試這個:你可以排空output變量之後添加的所有選項恰到好處如下 -

if(own != null) 
      { 
       var ar = own.replace("[","").replace("]","").split(","); 
       var output = $("#status_type"); 
       output.empty(); 
       output.append("<option value='ALL'></option");//add here 
       for(var i=0;i<ar.length/2;i++) 
       { 
        output.append("<option value='" + $.trim(ar[i*2+1]) + "'>" + $.trim(ar[i*2+1]) + "</option>"); 
        //alert ("val " +$.trim(ar[i*2+1])); 
       } 
} 
0

試試這個:

   $('#mysampledropdown').empty(); 
      $.each(response.d, function(key, value) { 
       $("#mysampledropdown").append($("<option></option>").val(value.ID).html(value.text)); 

      }); 
       $('<option>').val("").text('--ALL--').prependTo('#mysampledropdown'); 
相關問題