2016-08-30 81 views
1

我有一個包含重複值的select列表。我沒有權力改變這一點。當存在重複值時,按值選擇第一個選項

<select id="dropdown"> 
    <option value="1">Item 1</option> 
    <option value="1">Item 1 again under a different name</option> 
    <option value="2">Item 2</option> 
</select> 

在不同的地方,我有一個鏈接元素,點擊後,調用$("#dropdown").val(1)。這個「項目1再次以不同的名字」被選擇和顯示。我想要選擇「項目1」。我怎樣才能做到這一點?

回答

1

爲此,您可以通過value屬性選擇option元素並使用:first選擇器。試試這個:

var value = 1; 
 
$('#dropdown option[value="' + value + '"]:first').prop('selected', true);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<select id="dropdown"> 
 
    <option>Please select...</option> 
 
    <option value="1">Item 1</option> 
 
    <option value="1">Item 1 again under a different name</option> 
 
    <option value="2">Item 2</option> 
 
</select>

0

試試這個:

$("#dropdown option[value=1]:first").prop({selected:true}); 
0

那我想只有一個下拉列表中重複的值。首先,您需要找到該值,而不是選擇相同值的第一個選項。

var arrDuplicate = []; 
var duplicateVal = 0; 
$("#dropdown option").each(function() { 
if (arrDuplicate.indexOf($(this).val()) > -1) 
    duplicateVal = $(this).val(); 
arrDuplicate.push($(this).val()); 
}); 

$("#dropdown option[value=" + duplicateVal + "]:first").attr("selected", "selected"); 
相關問題