JavaScript按钮单击以更改变量

时间:2012-11-06 20:04:32

标签: javascript

嘿,我正在做一个复杂的统计项目,其中我显示了几个数字,并希望更改它们计算到的小数位数。我想这样做,以便页面的查看者可以通过单击增加或减少按钮来更改此数字。但是现在我知道如何改变它的唯一方法是通过代码本身,这是开头的“dec”变量。在这里,我将它设置为2个位置,但我怎么能这样做,以便它用按钮改变值?谢谢!

<input type="button" onclick="increase()" value="Increase"/>
<input type="button" onclick="decrease()" value="Decrease"/>
<br/><table border="1"><tr>
<script type="text/javascript">
dec=2;
for(n=1;n<=9;n++)
{
    document.write("<td>");
    for(t=0;t<=45;t++)
    {
        if(t<n)
        result=0;
        else
        result=fixed(((combin(t,n)*fact(n)*fact(45-n)/fact(45))*100),dec);
        document.write(result);
        zero(result,dec);
        document.write("%<br/>");
    }
    document.write("</td>");
}
function increase()
{
    ???
}
function decrease()
{
    ???
}
function fact(num)
{
    result=1;
    for(cnt=num;cnt>0;cnt--)
    result*=cnt;
    return result;
}
function combin(n,r)
{
    result=fact(n)/(fact(r)*fact(n-r));
    return result;
}
function fixed(num,d)
{
    result=Math.round(num*Math.pow(10,d))/Math.pow(10,d);
    return result;
}
function zero(num,dec)
{
    if(dec!=0&&num-Math.floor(num)==0)
    document.write(".");
    for(cnt=dec;cnt>0;cnt--)
    {
        test=num*Math.pow(10,cnt)
        if(test%10==0)
        document.write("0");
    }
}
</script></tr></table>

1 个答案:

答案 0 :(得分:0)

我会在一个以dec为参数的函数中包装for循环,然后监听按钮点击事件。

<button onclick="increase()" text="Increase"></button>

并且增加功能将类似于:

function increase(){
  calculate(++dec)
}

希望这有帮助!