我希望有一种更短的方法来检查sela
中是否存在一个选项。
有什么建议吗?
var str = 'white moon';
var x = 0;
$('#sela > option').each(function(){
if($(this).text() == str){x = 1;}
});
if(x == 1){console.log(x);}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id='sela'>
<option>blue sky</option>
<option>gold sun</option>
<option>white moon</option>
</select>
答案 0 :(得分:1)
这将检查下拉列表中存在的给定选项。
$(document).ready(function() {
console.log($("#sela option:contains(white moon)").length);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id='sela'>
<option>blue sky</option>
<option>gold sun</option>
<option>white moon</option>
</select>
答案 1 :(得分:1)
if ($('#sela option').length > 0) {
console.log('exist');
}
//if specific option exist
if($("#sela option[value='yourValue']").length > 0) {
}
答案 2 :(得分:0)
为什么不将value属性赋予您的选项?然后您可以轻松地选择所需的那个
var str = 'white moon';
console.log($('#sela>option[value="'+str+'"]'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id='sela'>
<option value="blue sky">blue sky</option>
<option value="gold sun">gold sun</option>
<option value="white moon">white moon</option>
</select>