如果没有值,则忽略输入

时间:2015-10-08 09:26:58

标签: javascript

我制作了一个非常简单的计算器,我确信有更好的编写方法,使用JS来计算所需的壁纸卷数量。您有墙长,墙高,卷宽,卷长和图案重复。我的计算器除了模式重复为空或0时工作 - 所以我需要忽略输入名称=“number3”(e)的值,如果它是0,我会计算如何做 - 但不太确定如何做到这一点。我可以用我目前编写的方式来完成这项工作,还是需要以不同的方式设置计算?

function multiplymetric(){
    var a=Number(document.metriccalculator.number1a.value);
    var b=Number(document.metriccalculator.number1b.value);
    var c=Number(document.metriccalculator.number2a.value);
    var d=Number(document.metriccalculator.number2b.value);
    var e=Number(document.metriccalculator.number3.value);
    var f=Math.ceil(a/c);
    var g=Math.ceil(b/e);
    var h=Math.floor(d/(e*g));
    var i=Math.ceil(f/h);
    document.metriccalculator.total.value=i;
}

<form name="metriccalculator"> 
<input type="text" size="10" height="15" name="number1a">
<input type="text" size="10" height="15" name="number1b">
<input type="text" size="10" height="15" name="number2a">
<input type="text" size="10" height="15" name="number2b">
<input type="text" size="10" height="15" name="number3">
<input type="button" id="calcbutton" onclick="javascript:multiplymetric();" value="Calculate number of rolls">
<input type="text" size="10" height="15" name="total">

1 个答案:

答案 0 :(得分:0)

替换指令:

var g=Math.ceil(b/e);

使用:

var g=Math.ceil(b/(e===0?1:e));