首先是以js方式对多个文本框框进行操作
window.onload = function () {
//var oTable = document.getElementById("dgv");
//if (oTable) {
// var oInput = oTable.getElementsByTagName("input");
// for (var i = 0; i < oInput.length; i++)
// {
// if (oInput[i].type == "text") {
// var calcSalary = 0;
// oInput[i].onchange = function () {
// var oValues= this.value;
// if (oValues == "" || isNaN(oValues)) {
// oValues = 0;
// } else {
// oValues = parseFloat(oValues);
// }
// //calcSalary += parseFloat(oValues);
// var oAllSalary = document.getElementById("allsum");
// oAllSalary.value =Number(oAllSalary.value)+Number(oValues);
// };
// }
// }
//}
};
采用JS 的方式给每个文本框绑定一个change事件 在每一个文本框中输入新的值后 赋值到另一个文本框中,此方法缺陷赋值完后在取消原赋值 结果不发生变化还是继续会累加。有知道解决方法的大神求指导,
jq方式对多个文本框框进行操作
$('.input_text').focus(function () {
var sum = 0;
$('.input_text').each(function () {
var num = $(this).val();
//这里注意不能写成sum+=num;这样写话会结果会是一个字符串
//因为js属于若类型语言默认两个变量向加默认为字符串连接会有个隐式转换,把数字行自动转换字符串进行连接
//如需要或得数字类型需按以下方式
sum = Number(sum) + Number(num);
})
$('#allsum').val(sum);
});