2013-03-08 39 views
1

HTML:刪除元素的特定範圍的JQuery

<select id ="combooptions"> 
      <option id="combostart" value=""></option> 
</select> 

JS:

var str = ""; 
if (combonews.length > 0) 
     for (var i in combonews) { 
      str += "<option value='" + combonews[i][0] + "'>" + combonews[i][1] + "</option>"; 
     } 
    jQuery("#combooptions").append(str); 

它工作正常,但現在我想刪除這些附加一個,留下最初的1個選項標籤,如圖所示以上。 我試過了:

jQuery("#combooptions").html(''); 
//or 
jQuery("#combooptions").append(''); 
//or 
jQuery("#combostart").append(''); 
//or 
jQuery("#combostart").html(''); 

但沒有成功。

請幫助 感謝您

回答

3

要縮小選擇列表,還可以降低期權數量:

document.getElementById("combooptions").length = 1; 

使用jQuery:

$("#combooptions")[0].length = 1; 

更通用的想法刪除「除第一個之外的所有」:

$("#combooptions :not(:first-child)").remove(); 

示例:http://jsfiddle.net/kVRpy/

+0

感謝你,還曾 – INgeek 2013-03-08 15:23:35

1

您可以選擇所有選項,然後從您的選擇中刪除帶有id combostart的那個。 然後致電.remove()刪除不需要的選項。

$('#combooptions option').not('#combostart').remove(); 
+0

謝謝。工作也 – INgeek 2013-03-08 15:22:49

0

試試這個:

$('#combooptions').html("<option id='combostart' value=''></option>");