<script language="JavaScript">
function Check()
{
if(document.all.txt_Second.value.length == 0)
{
return false;
}
else
{
return true;
}
}
function To_String(len) //str為字串 Ex:"12.5627"; len為小數位元 Ex:2; 返回結果為 12.56
{
var str = this.toString();
//如果沒有小數位
if(str.indexOf(".") == -1)
{
str += ".";
for(i=0;i<len;i++)
{
str += "0";
}
return str;
}
var str_L = str.substr(str.indexOf(".")+1);
//alert(str_L);
if(str_L.length <= len)
{
for(i=0;i<len-str_L.length;i++)
{
str += "0";
}
return str;
}
else
{
var str_Result = ""; //儲存結果
var str_S = str.substring(0,str.indexOf(".")+len+1);
//alert(str_S);
var Middle = parseInt( str.substr(str.indexOf(".")+len+1,1) ,10 );
//alert(Middle);
if(Middle>=5)
{
var flo_Result = parseFloat(str_S,10);
var increase = "0.";
for(i=0;i<len-1;i++)
{
increase += "0";
}
increase += "1";
var flo_increase = parseFloat(increase);
//alert(flo_Result);
//alert(flo_increase);
var floResult = flo_Result + flo_increase;
str_Result = floResult.toString();
}
else
{
str_Result = str_S;
}
return str_Result;
}
}
String.prototype.ToString = To_String;
function Round45()
{
var Digits = parseInt(document.all.txt_Digits.value);
//alert(Digits);
alert(document.all.txt_Second.value.ToString(Digits));
}
function Compute()
{
if(!Check())
{
alert("輸入不可為空!");
return false;
}
var FirstNum = parseFloat(document.all.txt_First.value,10);
alert(FirstNum);
if(isNaN(FirstNum))
{
alert("第一個不是數字!");
return false;
}
var SecondNum = parseFloat(document.all.txt_Second.value,10);
alert(SecondNum);
if(isNaN(SecondNum))
{
alert("第二個不是數字!");
return false;
}
document.all.txt_Result.value = ((SecondNum-FirstNum)/FirstNum*100).toPrecision(4).toString()+"%";
}
</script>
第一個數:<input type="text" id="txt_First" readonly value="100.00"><br />
第二個數:<input type="text" id="txt_Second">
<input type="button" value=" 計算 " onclick="Compute()"><br />
<input type=text value="2" id="txt_Digits">
<input type="button" value="小數四捨五入" onclick="Round45()">
<br />
百分比[(第二個數-第一個數)/第一個數]:<br />
<input type=text id="txt_Result" readonly>