我已经在我的一个页面上成功使用了这个计算脚本,但是,当我在另一个页面中重复使用它时。该页面一直在说" Uncaught TypeError:无法读取属性'值'未定义"我不明白这个剧本有什么问题。那么请你帮帮我吧。谢谢。
<script>
function startCalc(){ //automatically calculate total after discount when adding new order
interval = setInterval("calc()",1);
}
function calc(){
// for calculate each product order
var price;
var qty;
var od_total;
price = document.myform.od_price.value;
qty = document.myform.od_qty.value;
od_total = (price * 1) * (qty * 1);
document.myform.od_total.value = od_total.toFixed(2);
}
function stopCalc(){
clearInterval(interval);
}
</script>
我在
中使用了这个脚本<input id="od_qty" name="od_qty" type="text" size="8" value="" maxlength="100" onFocus="startCalc();" onBlur="stopCalc();">
<input id="od_price" type="text" size="4" value="<%=rs.fields.item("cust_price")%>" onFocus="startCalc();" onBlur="stopCalc();" >
<input id="od_total" name="od_total" type="text" size="10" value="" maxlength="100" readonly="true">
答案 0 :(得分:6)
这是页面结构的问题。这些字段必须采用名为myform
的格式才能使document.myform.od_price.value
正常工作。您可以将行更改为
document.getElementById('od_price').value
只使用id而不是表单名称选择它。第二个字段也是如此 - od_qty
。
答案 1 :(得分:1)
确保您表单的name
为myform
:
<form name="myform" action="page.php" method="POST">
....
</form>
aslo将name="od_price"
添加到:
<input id="od_price" name='od_price' .../>
答案 2 :(得分:1)
您在name
输入中缺少od_price
属性。添加它以正确引用它:
<input id="od_price" name="od_price" type="text" size="4" value="<%=rs.fields.item("cust_price")%>" onFocus="startCalc();" onBlur="stopCalc();" >