我該如何使用JQuery檢查一個值是否屬於下拉列表?檢查值是否與JQuery的選擇列表
97
A
回答
158
var thevalue = 'foo';
var exists = 0 != $('#select-box option[value='+thevalue+']').length;
如果該選項的值通過JavaScript設置,這是行不通的。在這種情況下,我們可以做到以下幾點:
var exists = false;
$('#select-box option').each(function(){
if (this.value == 'bar') {
exists = true;
return false;
}
});
14
萬一你(或其他人)可能有意這樣做沒有jQuery的:
var exists = false;
for(var i = 0, opts = document.getElementById('select-box').options; i < opts.length; ++i)
if(opts[i].value === 'bar')
{
exists = true;
break;
}
8
這裏是另外一個類似的選項。在我的情況下,我在構建選擇列表時檢查另一個框中的值。我一直運行到時候我會比較未定義的值,所以我把我的支票是這樣的:
if ($("#select-box option[value='" + thevalue + "']").val() === undefined) { //do stuff }
我不知道,如果這種做法是比較昂貴。
4
爲什麼不使用過濾器?
var thevalue = 'foo';
var exists = $('#select-box option').filter(function(){ return $(this).val() == thevalue; }).length;
比較鬆散的工作,因爲存在> 0是真實的,存在== 0是假的,所以你可以只使用
if(exists){
// it is in the dropdown
}
或者結合起來:
if($('#select-box option').filter(function(){ return $(this).val() == thevalue; }).length){
// found
}
或者每個選擇下拉菜單中有選擇框類,這會給你一個包含該值的select(s)的jquery對象:
var matched = $('.select-boxes option').filter(function(){ return $(this).val() == thevalue; }).parent();
+0
這是我最直觀的方式。 – Simon
1
if(!$('#select-box').find("option:contains('" + thevalue + "')").length){
//do stuff
}
相關問題
- 1. JS/Jquery:如何檢查下拉列表是否選擇了值?
- 2. 檢查值選擇選項列表
- 3. 檢查是否使用jQuery選擇ID
- 4. 如何檢查值是否存在與jQuery列表
- 5. 檢查是否選擇了ComboBox值
- 6. 檢查選擇下拉列表中的選項是否可用
- 7. 檢查選擇器是否
- 8. 檢查是否選擇了單選按鈕列表
- 9. 檢查是否選擇下拉值使用jQuery
- 10. jquery檢查是否沒有在選擇框中選擇
- 11. 檢查是否選擇了下拉列表中的項目
- 12. JQuery檢索文本而不是選擇列表的值
- 13. 檢查是否與jQuery
- 14. JS檢查是否有一個值在選擇多種選擇
- 15. T-SQL檢查列表是否有值,選擇並插入表中
- 16. 使用JavaScript或jQuery,如何檢查選擇框是否與原始值匹配?
- 17. jQuery的下拉列表中選擇是否值
- 18. jQuery:如何檢查是否在選擇框中明確選擇了否選項
- 19. 檢查值是否不在列表中
- 20. jQuery,檢查複選框是否與同一類檢查
- 21. 檢查值是否在多選列表中的最佳方法?
- 22. jQuery的多項選擇選項 - 檢查是否選擇一個選項或不
- 23. 如何檢查選擇框的組是否入圍與否
- 24. 檢查與jquery選擇器的數量
- 25. JQuery的檢查多個選擇價值
- 26. 檢查以查看是否在另一個表中選擇的項目列表
- 27. 如何檢查選擇值是否等於使用jQuery Validate的特定選項?
- 28. 檢查是否查找編輯選擇
- 29. 檢查是否正確的選項值選擇
- 30. 檢查分貝值是否與當前選擇選項相匹配的函數
顯式第二種方法是更安全也因爲它允許包含任何字符,包括']'和''\\選項值。避免從原始文本中構建選擇器字符串而不做適當的CSS轉義。 – bobince
爲什麼'返回false'? –
返回false用於中斷/結束.each循環。 – Angel