2013-03-17 59 views
0

我需要将一个变量传递给一个javascript函数,该函数将执行计算并将答案返回给窗体上的另一个编辑框。我需要通过,因为我有10行编辑框,并不想有10个独立的JavaScript函数。JavaScript在变量中传递elementid

function calc_totalcost(line) 
{ 
     $line_qty=line+"_qty"; 
    $line_totcost=line+"_totcost"; 
    $line_unitcost=line+"_unitcost"; 

    $totcost=$line_qty.value*$line_unitcost.value; 
    document.getElementById('$line_totcost').value = $totcost; 
} 
上的HTML

onchange="calc_totalcost('L1')" 

因此,在编辑框1 L1_edit1我需要发送L1的功能,然后将转换为“L1_qty”这是一个编辑框(输入)名称它将使用其内容执行计算。希望这是有道理的? 谢谢

+0

那里有问题吗? – Aiias 2013-03-17 09:15:19

+0

使用'for loop'! – spaceman12 2013-03-17 10:26:29

回答

0

你有几个问题,包括函数的最后一行不需要document.getElementById,而所有其他人都需要它。

function calc_totalcost(line) { 
    var $line_qty  = document.getElementById(line+"_qty"); 
    var $line_totcost = document.getElementById(line+"_totcost"); 
    var $line_unitcost= document.getElementById(line+"_unitcost"); 

    var $totcost=$line_qty.value*$line_unitcost.value; 
    $line_totcost.value = $totcost; 
}