如何在jQuery中选择HTML5数据属性?
我当前的jQuery选择了value属性。 如何更改我的jQuery以选择数据属性“data-price”?
$('#trapfabric, #trapsize').on('change', function() { var $selected = $('#trapfabric, #trapsize').children(":selected"); sum = parseInt($('#trapsize').val()) + parseInt($('#trapfabric').val()); $('#priceToSwap3').html('$' + sum ); });
我知道我必须在上面这样的东西,但我不能让它工作:
$('#priceToSwap3').text($selected.data("price"))
EDITED
我的HTML:
$238 foo foo foo foo
我相信这就是你想要的:
var $elements = $('#trapfabric, #trapsize'); $elements.on('change', function() { var $selected = $elements.children(":selected"); var sum = 0; $selected.each(function() { sum += $(this).data('price'); }); $('#priceToSwap3').html('$' + sum); });
您必须遍历所选元素以获取每个元素的price
数据。
DEMO
如果要获取需要使用$(this)
的source
元素, #trapfabric
事件绑定到两个元素#trapsize
, #trapfabric
;
的jsfiddle
$('#trapfabric, #trapsize').on('change', function() { $('#priceToSwap3').text( '$' + $(':selected', this).data("price") ); });
我们有一个类似的场景,我们为每个输入分配安全值(1,2,3作为安全级别)。 当用户登录系统时,我们必须更改安全值“0”。
例如: