我有一个非常奇怪的问题。我不确定为什么$ .data在更新数据属性后没有返回正确的值,即使该元素在firebug中具有正确的值。
<div>
<input type="text" name="price" id="price"/>
</div>
<button type="button" id="submit" data-price="100">Submit</button>
<div id="result"></div>
<script>
$(document).ready(function(){
$('#price').change(function(){
$('#submit').attr('data-price',$(this).val());
});
$('#submit').click(function(){
$('#result').html($(this).data('price'));
});
});
<script>
答案 0 :(得分:0)
答案 1 :(得分:0)
由于您已使用.attr()
设置data-price
值,因此您需要使用.attr()
代替.data()
来获取该值:
$('#result').html($(this).attr('data-price'));
答案 2 :(得分:0)
使用
$('#submit').click(function(){
$('#result').html($(this).attr('data-price'));
});
答案 3 :(得分:0)