2014-09-01 64 views
0

我在通過選項列表篩選以查找項目時遇到問題。JQuery過濾(查找val並使用相關文本)

FIDDLE

我想通過尋找例如的「501」值,並從抓文本值到別的地方使用的選項進行篩選。

<select id="media_keywords" class="chosen-select" multiple="" style="width: 350px;"> 
    <option value="504">Alpha</option> 
    <option class="optionFound" value="502">Bravo</option> 
    <option value="501">Foxtrot</option> 
    <option value="503">Zulu</option> 
</select> 

這裏是Jquery的我試圖

$("select") 
    .css("background", "#b4b0da") 
    .filter(function(index) { 
     $(this).attr("value") === "501"; 
    }) 
    .addClass("optionFound"); 

回答

1

您需要使用.find()搜索選項並返回獲取元素

$("select") 
    .css("background", "#b4b0da") 
    .find('option') 
    .filter(function(index) { 
    return this.value== "501"; 
    }).addClass('optionFound'); 

DEMO

或者沒有像這樣的過濾器使用屬性選擇器

$("select") 
    .css("background", "#b4b0da") 
    .find('option[value="501"]') 
    .addClass('optionFound'); 

DEMO

+1

感謝安東。很棒。 – morne 2014-09-01 14:49:13

1

試試這個:

var val = $('select') 
    .css('background', '#b4b0da') 
    .find('option[value="501"]') 
    .text();