どのフィールドにエントリがあるかによって、異なる関数を呼び出す電卓を作成する必要があります。
「initial_hosts」にはエントリが必要です。その場合、ユーザーは「Time」または「Num」に値を入力できますが、両方を入力することはできません(エラーメッセージ)。
「計算」をクリックしたときに「時間」に値を入力した場合は関数number()を呼び出し、「Num」の場合は関数timeCal()を呼び出します。
<script language="javascript" type="text/javascript">
function timeCal(){
a=Number(document.calculator.initial_hosts.value);
b=Number(document.calculator.Num.value);
// Example of cal
c=a*b;
document.calculator.total.value=c;
}
</script>
<script language="javascript" type="text/javascript">
function number(){
a=Number(document.calculator.initial_hosts.value);
b=Number(document.calculator.Time.value);
// Example of cal
c=a*b;
document.calculator.total.value=c;
}
</script>
<div class="figure2">
<form name ="calculator" class="form">
<p>You can use the calculator below to see the approximate number of infected hosts after a given amount of time </p>
<label for="Fname">initial hosts:</label><br/>
<input type="text" name="initial_hosts"/><br/>
<label for="Fname">Trigger Date:</label><br/>
<input type="text" id="TTime" value="" />
<br/><br/>
<font face="arial, helvetica" size="2" >Note: Enter the time space or the number of targets </font><br/>
<label for="Time">Enter Time:</label><br/>
<input type="text" name="Time"/><br/>
<label for="Num">Target Number :</label><br/>
<input type="text" name="Num"/><br/>
<label for="total">Outcome:</label><br/>
<input type="text" name="total"/><br />
<br/>
<p><input type="button" style="height: 35px; width: 100px" value="Calculate" onclick="javascript:timeCal();"/>
</form>
</div>
どうすればいいのかわからないので、よろしくお願いします:)