我想制作一个像这样的小型计算页面
1000 X _ =
500 X _ =
Total =
我想要做的是当有人在“_”中输入数值时,我会自动显示乘法,而不是总和。
<div>
<div>
<span class="value">1000</span> X
<input type="text" size="4" class="inputdata"/> =
<span class="multiplydate"></span>
</div>
<div>
<span class="value">500</span> X
<input type="text" size="4" class="inputdata" /> =
<span class="multiplydate"></span>
</div>
<div>
TOTAL =
<span class="totaldata"></span>
</div>
</div>
然后使用jquery进行计算:
$('.inputdata').live('onChange', function () {
$(this).closest('.multiplydata').html(
$(this).closest('.value').html() *
$(this).closest('.inputdata').val()
);
});
代码有什么问题?似乎没有任何事情发生。
答案 0 :(得分:3)
live
已替换为on
请更改为:
$('.inputdata').on('onChange',function(){
$(this).closest('.multiplydata')
.html($(this).closest('.value')
.html()*$(this).closest('.inputdata').val());
});
答案 1 :(得分:1)
更改:
onchange
已被keyup
$('.multiplydata')
Next
为Closest
所以将Next
更改为$('.inputdata').live('keyup', function () {
var SpanData = $(this).closest(":has(.value)").find('.value').html();
var Result = $(this).next(".multiplydate");
Result.html(SpanData * $(this).val());
//Total Part
var sum=0;
$('.multiplydate').each(function() {
sum += Number($(this).html());
});
$(".totaldata").html(sum);
});
小提琴示例:http://jsfiddle.net/RYh7U/113/
Jquery:
{{1}}