1
當selectedIndex或val使用jQuery進行設置時,是否可以在選擇字段上觸發更改事件?selectedIndex更改後觸發onChange事件?
我試過了,它似乎沒有工作。我試圖用我自己的設計替換一個選擇字段。問題是如果我將更改事件附加到選擇字段,當索引更改時需要觸發該事件。
有沒有辦法做到這一點?
var a = $("a");
$("a").on("click", function() {
$("#selectList")[0].selectedIndex = a.index($(this));
//now fire event
\t return false;
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#">Trigger 1</a>
<a href="#">Trigger 2</a>
<a href="#">Trigger 3</a>
<select id="selectList">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
編輯: @ xSaint32回答了這個,通過使用jQuery's trigger方法。
@克里斯 - 我有一個類似的問題。我嘗試使用$('theSelectBox')。trigger('change'),但它並不總是會觸發。我結束了將相同的函數綁定到click()事件,並取而代之的是:$('theSelectBox')。trigger('click') – dotariel 2010-11-01 16:03:12
@Chris您可以發佈一些代碼嗎? – lonesomeday 2010-11-01 16:06:14
@lonesomeday:目前我的代碼太長,無法在評論中發佈,並且不會保留編輯中的格式。我會看看我是否可以削減它並添加到編輯。 – 2010-11-01 16:16:03