我想從多選下拉框中將值壓入數組中。我能夠做到這一點,但是會發生什麼,他們不會按照我通過拼接設置的順序將其壓入陣列中。它按照它在選擇框上設置的順序添加。例如,如果我按照[467,341,344,657,677]的順序選擇選項,我的數組顯示[344,467,677,341,657]。我想要顯示數組以顯示我選擇的選項。 這是我的代碼:如何將多選下拉列表中的值推送到數組中?
<select multiple class="yo">
<option value = "344">opt1</option>
<option value = "467">opt2</option>
<option value = "677">opt3</option>
<option value = "341">opt1</option>
<option value = "657">opt1</option>
</select>
var optVal = new Array();
var tArray;
$('.yo').each(function() {
var newS = $(this).val();
tArray = newS;
optVal.splice(0, 0, tArray);
});
請幫忙!
這裏是我的小提琴:https://jsfiddle.net/rprakash/e1xcd2gh/
爲什麼不使用'.push()'?看起來您正在使用事件處理程序,請在代碼中顯示我們並提供可運行的示例。我無法使用您的代碼獲得這些結果。 –
我添加了一個小提琴! – rashmeePrakash
首先,你並不是真的「推」任何東西到數組中,只保留一個值。此外,多重選擇劑量不會跟蹤您選擇項目的順序,它會在兩次點擊之間選擇所有項目,並以自上而下的方式進行。 –