我有一个这样的表格:
<form name="calc" action="" id="calc">
<?php for($i=0; $i<15; $i++) { ?>
<input type="text" name="txt1[$i]" onkeyup="calcNumber()"/>
<input type="text" name="txt2[$i]" onkeyup="calcNumber()"/>
<input type="text" name="txt3[$i]" onkeyup="calcNumber()"/>
<span id="tot[$i]"></span>
<?php } ?>
</form>
这是javascript代码:
<script type="text/javascript">
function calcNumber() {
for(var j=0; j<15; j++) {
var totNumber[j] = document.calc.txt1[j].value + document.calc.txt2[j].value + document.calc.txt3[j].value;
document.getElementById('tot[j]').innerHTML = totNumber[j];
}
}
</script>
没有错误..但也没有结果。请让我知道我做错了什么。感谢。
答案 0 :(得分:0)
将您的html修复为以下内容。
<input type="text" name="txt1[<?php echo $i;?>]" onkeyup="calcNumber()"/>
<input type="text" name="txt2[<?php echo $i;?>]" onkeyup="calcNumber()"/>
<input type="text" name="txt3[<?php echo $i;?>]" onkeyup="calcNumber()"/>
<span id="tot[<?php echo $i;?>]"></span>
您当前的javascript行:
document.getElementById('tot[' + j + ']').innerHTML = totNumber;
totNumber
不是array
,在这种情况下不需要。
问题
您呈现的html正是您在问题中提供的html,$i
不会被数字取代,因为它不在<?php ?>
标记内。
答案 1 :(得分:0)
我已经找到了问题,只需在tot
中function calcNumber()
之后插入数组,但不能在tot
内插入数组。
非常感谢你们的帮助。