2 回答

TA貢獻1830條經驗 獲得超9個贊
使用$("option:selected",this)和.data()
$(function() {
$("#delivery-options").on("change",function() {
console.log($("option:selected",this).data())
})
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="delivery-options" class="custom-select">
<option selected="" value="0">VáLASSZON!</option>
<option value="1790" data-price="1790" data-name="MPL küldemény el?re fizetéssel" data-id="4TB994cA318NHg6u8ILM">MPL küldemény el?re fizetéssel - 1 790 Ft</option>
<option value="990" data-price="990" data-name="Foxpost automatába" data-id="cC62JjhpDE7ksFd6A2jd">Foxpost automatába - 990 Ft</option>
<option value="1611" data-price="1611" data-name="GLS háztól-házig futár el?re fizetéssel" data-id="i5lwg116QsFzTuuSuxBk">GLS háztól-házig futár el?re fizetéssel - 1 611 Ft</option>
</select>
普通JS:
window.addEventListener("load",function() {
document.getElementById("delivery-options").addEventListener("change",function() {
console.log(this.options[this.selectedIndex].dataset)
})
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="delivery-options" class="custom-select">
<option selected="" value="0">VáLASSZON!</option>
<option value="1790" data-price="1790" data-name="MPL küldemény el?re fizetéssel" data-id="4TB994cA318NHg6u8ILM">MPL küldemény el?re fizetéssel - 1 790 Ft</option>
<option value="990" data-price="990" data-name="Foxpost automatába" data-id="cC62JjhpDE7ksFd6A2jd">Foxpost automatába - 990 Ft</option>
<option value="1611" data-price="1611" data-name="GLS háztól-házig futár el?re fizetéssel" data-id="i5lwg116QsFzTuuSuxBk">GLS háztól-házig futár el?re fizetéssel - 1 611 Ft</option>
</select>

TA貢獻1853條經驗 獲得超9個贊
使用
var itemInfo = $(this).children('option:selected').data();
它將獲取整個 data-* 屬性。
添加回答
舉報