我有我加入動態使用從一個變量叫「結果」數據選項中選擇元素:添加「選擇」屬性爲用戶選擇的選項「改變」後與jQuery
HTML:
<select id="categories">
<option selected disabled>Select your category</option>
</select>
的jQuery:
$.each(results.Subcategories, function(index,category) {
var category = '<option value="'+category.Name+'" data-index="'+index+'">'+category.Name+'</option>';
$('#categories').append(category);
});
這正常工作,我能夠在選擇元素的動態添加選項之間做出選擇。
我現在需要做的是獲取當前選擇的AFTER的'value'屬性,用戶從添加的選項中選擇它。這是我陷入困境的地方。我認爲,像這樣的工作:
$('#categories').on('change', function() {
var optionSelected = $("#categories option:selected", this);
console.log($(optionSelected).data("value"))
});
但是,當我選擇一個新的選擇的屬性不會在移動選項,所以我無法定位到該屬性來獲取值。
假設上面的方法是穩定的,如何讓我的新選擇的選項具有選定的屬性,以便我可以將其定位並獲取值?還是有更好的方法,我錯過了?提前致謝。
只需做$(this).val()或this.value即可獲得選定的值。 – DinoMyte
@DinoMyte - 但是我怎麼知道'this'對於新選擇的選項是什麼,沒有'selected'屬性呢? – SilentDesigns
'selected'屬性指定在選擇元素加載時應該預先選擇哪個選項。你是否試圖從外部事件插入選項並讓它在選擇元素中顯示選中? – DinoMyte