2017-07-25 62 views
0

我有這樣從下拉菜單中選擇選項,其中值包含字符串

<select id="acctDesc" name="acctDesc"> 
<option value="1~PB1001~10001~0~Sales Glassware">1</option> 
<option value="2~PB1002~10002~0~American">2</option> 
<option value="3~PB1003~10003~0~Sales Appliance">3</option> 
<option value="4~PB1004~10004~0~Sales Spare Parts">4</option> 
<option value="5~PB1005~10005~0~Sales ">5</option> 
</select> 

而且

<script> 
var test="Sales Glassware"; 
</script> 

現在我已經在選項的值包含以從下拉該選項的下拉列表高於變量值。直到現在我已經使用jquery過濾器,但無濟於事。 任何幫助表示讚賞。

+1

'$( '選項[價值$ = 「 '+測試+'」]')。支撐( '選擇',真)' – Satpal

+0

您可以從明顯的聯繫相結合的答案與含有選擇器:https://api.jquery.com/attribute-contains-word-selector/ – Rajesh

回答

0

使用屬性選擇,$將搜索與文本結束

$('option[value$='+test+']'); 
+0

我們應該真的回答一個愚蠢的? – Rajesh

+0

@Rajesh在評論中的答案不完全是這個問題的答案 – madalinivascu

+0

我知道它,因此我已經評論鏈接*包含選擇器*。點是結合它會解決問題。所以我們應該真的回答所有的組合。此外,必須有一個適當的愚蠢。我將搜索並添加它的鏈接。 – Rajesh

0

使用.split()方法將特定字符的字符串分割的選項,並將其與數組的形式返回和使用.pop()方法來獲得數組中的最後一個值。

$('#acctDesc').on('change', function() { 
 
     var val = $(this).val(); 
 
     val = val.split('~').pop(); 
 
     alert(val) 
 
}).change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="acctDesc" name="acctDesc"> 
 
<option value="1~PB1001~10001~0~Sales Glassware">1</option> 
 
<option value="2~PB1002~10002~0~American">2</option> 
 
<option value="3~PB1003~10003~0~Sales Appliance">3</option> 
 
<option value="4~PB1004~10004~0~Sales Spare Parts">4</option> 
 
<option value="5~PB1005~10005~0~Sales ">5</option> 
 
</select>

+1

你可以直接使用'value〜= searchValue'。無需分割和搜索 – Rajesh

相關問題