简体   繁体   English

检查选项是否存在的更短方法

[英]shorter way to check if an option exists

I hope there is a shorter way to check if an option inside sela exists. 我希望有一种更短的方法来检查sela存在选项。

Any suggestion? 有什么建议吗?

 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> 

This will check given option exist on dropdown. 这将检查下拉列表中给定的选项是否存在。

 $(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> 

if ($('#sela option').length > 0) {
  console.log('exist');
}

//if specific option exist
if($("#sela option[value='yourValue']").length > 0) {
}

Why not giving value attribute to your option ? 为什么不将价值属性赋予您的选择权? then you can easily selected the one you want 然后您可以轻松地选择所需的

 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> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM