我是javascript(和jQuery)的新手,所以请耐心等待。
我希望用户能够在文本框中输入数字,每次用户输入另一个值(keypress,keydown,keyup)时代码都会执行并计算新值。
这是jsFiddle
我的问题是文本框不允许我输入多个值。如何继续输入更多值?
jQuery(1.9.1)
$(document).ready(function() {
$('.conv').keyup(function() {
var valx = parseFloat($(this).attr('data-val'));
var classes = parseInt($('.conv').length);
for (var i=1;classes;i++) {
var x = 'a' + i;
//alert(x);
var theval = document.getElementById(x);
var z = parseFloat($('#' + x).attr('data-val'));
//alert(z);
$('#' + x).val(z / valx);
if (i == classes) {
break;
}
}
});
});
再次......如果你想编辑
,这里是jsFiddle答案 0 :(得分:0)
您似乎甚至会覆盖生成事件的文本框的值。
替换
$('#' + x).val(z / valx);
与
$('#' + x).not(this).val(z / valx);
修改强>
原因是你总是从
中读取价值var valx = parseFloat($(this).attr('data-val'));
而不是
var valx = parseFloat($(this).val());
<强> Check Fiddle 强>