我有一个订单页面,客户从各种类别中选择产品,然后使用php foreach循环我从数据库中获取所选产品详细信息,并在步骤2中显示所选产品,其中要选择数量。在第二步中,我需要计算产品的小计,即数量*速率(从db获取)。我无法为此编写有效的javascript代码。
<input type="text" name="qty<?php echo $index; ?>" maxlength="7" class="bo-text" onblur = "getnsetvalue(<?php echo $sp; ?>, <?php echo $index; ?>);"> // the textbox where quantity is added
<input type="text" readonly name="subtotal<?php echo $index; ?>" maxlength="7" class="bo-text"> //the texbox where subtotal will be computed and displayed
我使用的javascript代码是:
function getnsetvalue(rate, index){
var quantity_field = "qty" + index;
var quantity = document.product2.quantity_field.value;
var stotal = parseFloat(rate*quantity);
var target_field = "subtotal" + index;
document.product2.target_field.value=stotal;
}
任何帮助将不胜感激
答案 0 :(得分:0)
你应该尝试onchange事件而不是onblur。并确保您的输入率和索引,这两者都不为空
答案 1 :(得分:0)
尝试
function getnsetvalue(rate, index){
var quantity_field = "qty" + index;
var quantity = document.getElementsByName(quantity_field)[0].value
var stotal = parseFloat(rate*quantity);
var target_field = "subtotal" + index;
document.getElementsByName(target_field)[0].value=stotal;
}
注意:您的vars quantity_field,target_field不是对象 - 它们只是可用于查找所需对象的字符串。