我的预期输出是
当我在输入文本字段中输入时,我在第三个文本字段中得到即时求和结果
如果我在第一个文本字段中键入3并打开了键,则必须在第三个字段中立即显示3+0=3
但不显示任何结果
$(document).ready(function(){
var a=0, b=0,c=0;
$("input:#a").keyup(function(){
a=$("input:#a").val();
c=a+b;
$("input:#c").append(a+"+"+"b"+"="+c);
});
$("input:#a").keyup(function(){
b=$("input:#b").val();
c=a+b;
$("input:#c").append(a+"+"+b+"="+c);
});
});
<tr><td><input type="text" id="a"></td></tr>
<tr><td><input type="text" id="b"></td></tr>
<tr><td><input type="text" id="c"></td></tr>发布于 2013-01-28 22:17:37
您需要一些类似以下内容的东西:
<table>
<tbody>
<tr><td>A<input type="text" id="a" /></td></tr>
<tr><td>B<input type="text" id="b" /></td></tr>
<tr><td>C<input type="text" id="c" /></td></tr>
</tbody>
</table>
<!-- If you need this: -->
<script src="http://code.jquery.com/jquery-1.9.0.min.js"></script>
$(document).ready(function(){
var a=0,
b=0;
$('input#a').bind('keyup', function(e){
a = parseInt($(this).val()) || 0;
var c = (a + b);
$('input#c').val(a + '+' + b + '=' + c);
});
$('input#b').bind('keyup', function(e){
b = parseInt($(this).val()) || 0;
var c = (a + b);
$('input#c').val(a + '+' + b + '=' + c);
});
});此代码执行计算并将结果放入框C,并使用计算结果自动更新C。
发布于 2013-01-28 22:09:13
您正在连接字符串。您需要实际添加数字(而不是使用.append):
$("#c").text(parseInt(a) + parseInt(b));此外,您应该以).on('keyup', function () {而不是).onkeyup的身份进行编写
发布于 2013-01-28 22:09:42
正确的术语应该是.keyup()而不是.onkeyup。
http://api.jquery.com/keyup/
https://stackoverflow.com/questions/14563804
复制相似问题