jquery在select中获取selected选项的标记

jquery在select中获取selected选项的标记,jquery,select,tags,option,Jquery,Select,Tags,Option,为了一件简单的事情我找了很多,但我找不到解决办法。 如何在jquery中获取所选选项的价格?。。。假设 <select id="combo"> <option value="1" price="22">Soap</option> <option value="2" price="24">Milk</option> </select> 但是,在这种情况下,您可能希望使用数据价格作为属性 $('option',

为了一件简单的事情我找了很多,但我找不到解决办法。 如何在jquery中获取所选选项的价格?。。。假设

<select id="combo">
    <option value="1" price="22">Soap</option>
    <option value="2" price="24">Milk</option>
</select>
但是,在这种情况下,您可能希望使用数据价格作为属性

$('option', '#combo').filter(':selected').data('price');
它将重新计算价格


例如:如果你在组合框中选择肥皂,它将重新计算价格为22。

谢谢亚当。。。但是如何使用它呢?。。。像这样$在'change'上,函数{var priceVal=$'option','combo.filter':selected'。数据'price'.val;};我的答案中的代码简单地返回了价格,所以是的,把它放在一个变量中,然后用它做任何你想做的事情!但是看起来你已经从编辑过的答案中修复了它?
$(document).ready(function () {
   $('select#variedad').on('change', function () {
        var precio = $('option', '#variedad').filter(':selected').data('precio');
        $('span#precio').html( precio );
    });

    $('.cambio').bind( "change keyup", function() {
        var precio = document.getElementById('precio').innerHTML;
        precio = parseFloat(precio);

        var descuento = document.getElementById('descuento').innerHTML;
        descuento = parseFloat(descuento);

        var peso = parseFloat($('input#peso').val());

        var total = (precio*peso) - ( ( ( precio * peso ) * descuento ) / 100 )
        total = (total).toFixed(2);
        $('span#total').html(total + ' €');

    });
$('option', '#combo').filter(':selected').attr('price');
$('option', '#combo').filter(':selected').data('price');
$("#combo option:selected" ).attr("price");