jquery 根据 option 的 text 定位选中 option

$('#test option[text="b"]').attr("selected",true);  

上面的方法在 jquery 低于 1.4.2 的版本(含)中有效,在更高版本中无效!

 

例如:

<select name="number" id="test">
    <option value="1">a</option>
    <option value="2">b</option>
</select>

jquery 版本

<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>

 

 

解决一:精确匹配,选择文本与所给字符串完全一样的option。

$('#test option').filter(function(){return $(this).text()=="b";}).attr("selected",true);  

 

解决二:子串匹配,选择文本包含所给字符串的option。

$("#test option:contains('b')").attr('selected', true);  

 

posted @ 2020-05-22 22:04  Ryan_zheng  阅读(...)  评论(...编辑  收藏