繁体   English   中英

如果没有值,则忽略输入

[英]Ignore input if it has no value

我做了一个非常简单的计算器,我敢肯定有一种更好的书写方式,可以使用JS计算所需的墙纸卷数。 您有墙长,墙高,纸卷宽度,纸卷长度和图案重复。 我的计算器的工作原理与模式重复为空白或为0时不同-因此,如果计算值为0,我需要从我的计算中忽略输入name =“ number3”(e)的值-但不太确定如何执行此操作。 我可以使用当前编写的方式来执行此操作,还是需要以不同的方式设置计算?

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">

替换指令:

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

与:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM