我正在制作一个最终将值提交到数据库的PO表单。当您查看代码时,如果加载它,您将看到行项目区域。数量,描述,Loaction / Use和行总数。第一个订单项的所有内容都很有效,但在填写第二个订单项和后续订单项时,行总计列不会计算或显示任何值。行总字段是简单的数学;数量*单价=总线数。 同样,第一轮的作品很棒。第二行和其他行,好吧,没有任何东西显示在右侧的行总计字段中,我无法弄清楚原因。调用的计算和函数都是相同的,字段ID都是唯一的,我没有得到任何错误。我四处搜索但没有找到任何答案,这是一个奇怪的答案,不确定我是否正在搜索正确的标准。这是一个页面链接(查看源代码以查看代码 - 现在只是简单的HTML和Javascript):
http://www.acsout.com/maintenance.html
因此,当页面加载时,其中7行被隐藏:
document.getElementById('frow3').style.display = 'none';
对于每一行,要计算行总数,我使用的是:
function l1calc(){
if(document.getElementById('up1').value != '' && document.getElementById('q1').value != ''){
tot1 = document.getElementById('q1').value * document.getElementById('up1').value;
document.getElementById(“lt1”)。value = parseFloat(Math.round(tot1 * 100)/ 100).toFixed(2); } }
函数l1calc()工作正常
下一个不起作用的是相同的,具有不同的变量:
function l2calc(){
if(document.getElementById('up2').value && document.getElementById('q2').value){
tot2 = parseFloat(document.getElementById('q2').value) * parseFloat(document.getElementById('up2').value);
document.getElementById('lt2').value = tot2;
}
}
我发布的链接带您进入页面,让您查看源代码以查看完整代码并测试它以查看我所指的内容。
如果我改变(在函数l2calc中)最后一行是:
document.getElementById('lt1').value = tot2;
然后lt1字段显示触发函数时的值。但是当它应该是l2calc
时document.getElementById('lt2').value = tot2;
输入字段lt2从不显示该值,它只是保持空白。对于行总列中的其余字段也是如此。
答案 0 :(得分:0)
这一行在您的脚本(posubtotal
)
if(document.getElementById("lt2").value = null){ // <-- == null
polt2 = 0;
}
我使用了firebug,并在568
中看到了带有断点的硬编码l2calc
,然后看到值消失了。所以我遵循了代码。