日期:2014-05-16  浏览次数:20364 次

JS问题,请大家帮忙?
文本框txtformula= "price*1.5 "     //一个文本框,初实值为:price*1.5
文本框txtmoney                                 //总金额
下面是我的JS代码:
function   Sum(obj1,obj2,obj3,obj4)
{
var   price=obj1.value;     //单价
var   amount=obj2.value;   //数量
var   rate=obj3.value;       //税率
var   total=obj4.value;     //小计
var   money;                           //总计
var   cc=document.getElementById( "txtformula ").value;     //得到计算公式
obj3.innerText=cc;
问题:
1:obj3.innerText=price*1.5   可以得到值,obj3.innerText=cc为什么得到的值是price*15,怎样让他能计算.(15)
2.如何能过循环得到总金额(25)
3.如果A=10,B=3   A/B=3.333333333,我只想取小数位2位,应该如何取得.(10)


------解决方案--------------------
1,2看不懂你的需求,绕来绕去的
3、
<script>
var a=10;
var b=3;
alert(Math.round((a*100)/b)/100);
</script>
------解决方案--------------------
看不明白。
1、如果cc是公式的字符串的话,可以obj3.innerText=eval(cc)
------解决方案--------------------
<html>
<head>
<script language=javascript>
function a(){
alert((10/3).toFixed(2));
var price=10;
var cc=document.getElementById( "txtformula ");
var t=document.getElementById( "total ");
var total=eval(cc.value);
t.innerText=total;
alert(total);
}

function b(){

}
</script>
</head>
<body>
<input type=text id= "txtformula " value= "price*1.5 ">
<input type=text id= "total " >
<input type=button onclick= "a(); " value= "compute ">

</body>
</html>
------解决方案--------------------
var cc=eval(document.getElementById( "txtformula ").value);