<SCRIPT LANGUAGE="JavaScript">
<!--
var n=<%=rownum%>;
var m=<%=arr_linei%>;
var b=0
//-->
function linesum(){ for(var j=0;j<m;j++){
var agocost,sumcost,totalcost,i;
sumcost="input2_"+j+"_0";
cost="input4_0"
if(document.getElementById(sumcost).value!=""){
s=parseFloat(document.getElementById(sumcost).value);
b=b+s;
document.getElementById(cost).value=b;
}
}
}
</script>
上面函数可以id=input4_0的值等于id为input2_"+j+"_0的值的和
当如果0变成变量该如何改这个函数写法,我写的有问题,如下:
function linesum(i){ for(var j=0;j<m;j++){
for(var i=0;i<n;i++){
var agocost,sumcost,totalcost,i;
sumcost="input2_"+j+"_"+i;
cost="input4_"+i;
if(document.getElementById(sumcost).value!=""){
s=parseFloat(document.getElementById(sumcost).value);
b=b+s;
document.getElementById(cost).value=b;
}
}
}
</script>
<!--
var n=<%=rownum%>;
var m=<%=arr_linei%>;
var b=0
//-->
function linesum(){ for(var j=0;j<m;j++){
var agocost,sumcost,totalcost,i;
sumcost="input2_"+j+"_0";
cost="input4_0"
if(document.getElementById(sumcost).value!=""){
s=parseFloat(document.getElementById(sumcost).value);
b=b+s;
document.getElementById(cost).value=b;
}
}
}
</script>
上面函数可以id=input4_0的值等于id为input2_"+j+"_0的值的和
当如果0变成变量该如何改这个函数写法,我写的有问题,如下:
function linesum(i){ for(var j=0;j<m;j++){
for(var i=0;i<n;i++){
var agocost,sumcost,totalcost,i;
sumcost="input2_"+j+"_"+i;
cost="input4_"+i;
if(document.getElementById(sumcost).value!=""){
s=parseFloat(document.getElementById(sumcost).value);
b=b+s;
document.getElementById(cost).value=b;
}
}
}
</script>
for(var i=0;i<n;i++){
var agocost,sumcost,totalcost,i;
sumcost="input2_"+j+"_"+i;
cost="input4_"+i;
if(document.getElementById(sumcost).value!=""){
s=parseFloat(document.getElementById(sumcost).value);
b=b+s;
document.getElementById(cost).value=b;
}
}
}歧义引用了
吧函数参数的变量名改掉 以后要注意下 函数的形参参数名用有意义的
function linesum(){
var agocost, sumcost, totalcost;
for(var i = 0; i < n; i++){
agocost = document.getElementById("input4_" + i);
totalcost = 0;
for(var j = 0; j < m; j++){
sumcost = document.getElementById("input2_" + i + "_" + j).value;
if(sumcost != ""){
totalcost += parseFloat(sumcost);
}
}
agocost.value = totalcost;
}
}
var m=<%=arr_linei%>;
var b=0;function linesum(){ for(var j=0;j<m;j++){
for(var i=0;i<n;i++){
//var agocost,sumcost,totalcost,i;
sumcost="input2_"+j+"_"+i;
cost="input4_"+i;
if(document.getElementById(sumcost).value!=""){
s=parseFloat(document.getElementById(sumcost).value);
b+=s;
}
document.getElementById(cost).value=b;
}
}
}关键问题 你上面的 n的数量 是算上统计格子完整的列数吗