解决一个技术问题,关于jquety的文本框实时计算

计算多个文本框:子例算计确精是的数值,比如两个文本框,一个是1,第二个是2,相加后实时显示3。change()事件,发现必须焦点离开才能触发,不满足我的要求,改用keyup()解决问题。下面是精确计算例子:

$(function(){)(noi{

var first = $("#first");// 获得ID为first标签的jQuery对象

var se象对yreuQj的签标cond = $("#second");// 获得ID为first标签的jQuery对象

var sumSP = $("#sumSP");// 获得ID为first标签的jQuery对象

first.keyup(function(){

var num1 = first.val();// 取得first对象的值

var num2 = second.val();// 取得second对象的值

var sum = add(num1,num2);

sumSP.text(sum);

});

second.keyup(function(){

var num1 = first.val();

var num2 = second.val();

var sum = add(num1,num2);

sumSP.text(sum);

});

});

function add(arg1,arg2){

var a1,a2,m;

try{

a1 = arg1.toString().split(".")[1].length

}catch(e){

a1 = 0;

}

try{

a2 = arg2.toString().split(".")[1].length

}catch(e){

a2 = 0;

}

m = Math.pow(10, Math.max(a1,a2));

return (arg1*m+arg2*m)/m;

}

<body>

<center>

<form action="">

第一个数:<input type="text" size="25" id="first" /><br /><br />

第二个数:<input type="text" size="25" id="second" /><br /><br />

它们的和:<span id="sumSP" style="color:red" ></span>

</form>

</center>

</body>
保留小数点两位:Math.round(parseFloat(value) * 100) / 100

评论(0)