2016-09-24 63 views
2

我試圖從選擇下拉列表中選擇一個選項,text()屬性的HTML元素cheerio。到目前爲止,我正在做的是我試圖將attr設置爲選定的匹配項,即具有特定文本的元素。通過文本選擇選項與cheerio(jQuery)

這就是我想:

$('#ddl_city option[text="testing"]').attr('selected', 'selected'); 

我沒有收到關於HTML的改變當我這樣做。在完成這個操作之後,我在控制檯上打印了html文檔,但是我沒有看到選項已經改變爲我選擇的那個。任何想法爲什麼不工作或其他解決方法? jQuery開發論壇

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

貸Godsbest的答案this post

回答

1

可以使用:contains過濾器以獲得基於文本的具體option元素,並設置select元素的值到它的價值:

$('#s1').val($("#s1 option:contains('Val B')").val())
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="s1"> 
 
    <option value="a">Val A</option> 
 
    <option value="b">Val B</option> 
 
</select>