javascript计算器答案中的逗号



我正试图在JavaScript计算器中的输出答案中添加逗号。我更新了一个旧的计算器,它是在我维护的以前的网站上使用的,它正在工作,但我无法得到用逗号显示的答案。我很兴奋我学会了如何四舍五入到小数点后2位。我尝试了一些我觉得可能有效的不同方法,但我在如何更改代码方面缺少了一些东西,因为我的代码设置与我看到的示例不同。

function clear_buildingCalc() {
document.buildingCalc.ICCVal.value = "";
document.buildingCalc.permitFee.value = "";
document.buildingCalc.planReview.value = "";
document.buildingCalc.Subtotal.value = "";
document.buildingCalc.DBPR.value = "";
document.buildingCalc.DCA.value = "";
document.buildingCalc.totalFee.value = "";
document.buildingCalc.Subtotaldisc.value = "";
document.buildingCalc.DBPRdisc.value = "";
document.buildingCalc.DCAdisc.value = "";
document.buildingCalc.totalFeedisc.value = "";
}
function calcBuilding(ICCVal) {
var validNums = "0123456789"
var flag = "yes";
var tempChar;
for (var c = 0; c < ICCVal.value.length; c++) {
tempChar = "" + ICCVal.value.substring(c, c + 1);
if (validNums.indexOf(tempChar) == "-1") {
flag = "no";
}
}
if (flag == "no") {
alert("Please enter only whole numbers.");
}
if (flag == "yes") {
if (document.buildingCalc.ICCVal.value == "") {
alert("Please enter the ICC valuation.");
} else {
var addlFee = 5.26;
var baseFee = 968.50;
var roundICC = Math.round(ICCVal.value - 100000) / 1000;
var permitFee = Math.round((addlFee * roundICC) * 1000) / 1000;
var permitFee2 = Math.round((permitFee + baseFee) * 100) / 100;
var planReviewRate = 0.25;
var planReview = Math.round((planReviewRate * permitFee2) * 1000) / 1000;
var Subtotal = Math.round((permitFee2 + planReview) * 100) / 100;
var DBPRRate = 0.015;
var DBPR = Math.round((DBPRRate * Subtotal) * 100) / 100;
var DCARate = 0.01;
var DCA = Math.round((DCARate * Subtotal) * 100) / 100;
var totalFee = Math.round((Subtotal + DBPR + DCA) * 100) / 100;
var Subtotaldisc = Math.round((Subtotal * 0.25) * 100) / 100;
var DBPRRatedisc = 0.015;
var DBPRdisc = Math.round((DBPRRatedisc * Subtotaldisc) * 100) / 100;
var DCARatedisc = 0.01;
var DCAdisc = Math.round((DCARatedisc * Subtotaldisc) * 100) / 100;
var totalFeedisc = Math.round((Subtotaldisc + DBPRdisc + DCAdisc) * 100) / 100;
document.buildingCalc.permitFee.value = permitFee2;
document.buildingCalc.planReview.value = planReview;
document.buildingCalc.Subtotal.value = Subtotal;
document.buildingCalc.DBPR.value = DBPR;
document.buildingCalc.DCA.value = DCA;
document.buildingCalc.totalFee.value = totalFee;
document.buildingCalc.Subtotaldisc.value = Subtotaldisc;
document.buildingCalc.DBPRdisc.value = DBPRdisc;
document.buildingCalc.DCAdisc.value = DCAdisc;
document.buildingCalc.totalFeedisc.value = totalFeedisc;
}
}
}
<form name="buildingCalc">
<table border="0" cellpadding="5" bordercolor="#000000">
<tr>
<td width="350" valign="bottom"><span class="body">Enter the ICC valuation (round to the nearest thousand) Example: 342778.20 is 343000 </span></td>
<td align="center" valign="bottom">
<div class="body">$<input type="text" name="ICCVal">
</div>
</td>
</tr>
<tr>
<td colspan="2">
<span class="body"><input type="button" onClick="calcBuilding(ICCVal)"                                                                                       value="Calculate building permit fee"></span>
</td>
</tr>
<tr>
<td>
<div class="body">Building permit fee</div>
</td>
<td align="center" class="body">$<input type="text" name="permitFee">
</td>
</tr>
<tr>
<td>
<div class="body">Plan review 25%</div>
</td>
<td class="body">$<input type="text" name="planReview">
</td>
</tr>
<tr>
<td>
<div class="body">Subtotal</div>
</td>
<td class="body">$<input type="text" name="Subtotal">
</td>
</tr>
<tr>
<td>
<div class="body">DBPR 1.5%</div>
</td>
<td class="body">$<input type="text" name="DBPR">
</td>
</tr>
<tr>
<td>
<div class="body">DCA 1%</div>
</td>
<td class="body">$<input type="text" name="DCA">
</td>
</tr>
<tr>
<td>
<div class="body">Total building permit fee</div>
</td>
<td class="body">$<input type="text" name="totalFee">
</td>
</tr>
<tr>
<td colspan="2" class="body">
<p><strong>                                            <label>Does not include impact fees (if applicable), or Fire fees for commercial permits.</label>
</strong></p>
<p class="subpagesubheader">Fees effective Jan. 1, 2021 with 75% reduction applied </p>
</td>
</tr>
<tr>
<td>
<div class="body">Subtotal</div>
</td>
<td class="body">$<input type="text" name="Subtotaldisc">
</td>
</tr>
<tr>
<td>
<div class="body">DBPR 1.5%</div>
</td>
<td class="body">$<input type="text" name="DBPRdisc">
</td>
</tr>
<tr>
<td>
<div class="body">DCA 1%</div>
</td>
<td class="body">$<input type="text" name="DCAdisc">
</td>
</tr>
<tr>
<td>
<div class="body">Total building permit fee</div>
</td>
<td class="body">$<input type="text" `enter code here`name="totalFeedisc">
</td>
</tr>
<tr>
<td colspan="2" class="body">
<p><input type="button" onClick="clear_buildingCalc()" value="Clear calculation"></p>
</table>
</form>

Javascript

<script language="JavaScript">
function clear_ICCCalc()
{
document.ICCCalc.OccupancyConst.value = "";
document.ICCCalc.SquareFeet.value = "";
document.getElementById("result").innerHTML = "";
}   
function multiplyBy()
{
num1 = document.getElementById("OccupancyConst").value;
num2 = document.getElementById("SquareFeet").value;
document.getElementById("result").innerHTML = num1 * num2;
}
</script>

分配值时可以使用.toLocaleString();。例如

document.buildingCalc.totalFeedisc.value = totalFeedisc.toLocaleString()

如果你想让小数起作用,在var validNums = "0123456789."中包括.这样你就可以保持功能&随时更改

function clear_buildingCalc() {
document.buildingCalc.ICCVal.value = "";
document.buildingCalc.permitFee.value = "";
document.buildingCalc.planReview.value = "";
document.buildingCalc.Subtotal.value = "";
document.buildingCalc.DBPR.value = "";
document.buildingCalc.DCA.value = "";
document.buildingCalc.totalFee.value = "";
document.buildingCalc.Subtotaldisc.value = "";
document.buildingCalc.DBPRdisc.value = "";
document.buildingCalc.DCAdisc.value = "";
document.buildingCalc.totalFeedisc.value = "";
}
function calcBuilding(ICCVal) {
var validNums = "0123456789."
var flag = "yes";
var tempChar;
for (var c = 0; c < ICCVal.value.length; c++) {
tempChar = "" + ICCVal.value.substring(c, c + 1);
if (validNums.indexOf(tempChar) == "-1") {
flag = "no";
}
}
if (flag == "no") {
alert("Please enter only whole numbers.");
}
if (flag == "yes") {
if (document.buildingCalc.ICCVal.value == "") {
alert("Please enter the ICC valuation.");
} else {
var addlFee = 5.26;
var baseFee = 968.50;
var roundICC = Math.round(ICCVal.value - 100000) / 1000;
var permitFee = Math.round((addlFee * roundICC) * 1000) / 1000;
var permitFee2 = Math.round((permitFee + baseFee) * 100) / 100;
var planReviewRate = 0.25;
var planReview = Math.round((planReviewRate * permitFee2) * 1000) / 1000;
var Subtotal = Math.round((permitFee2 + planReview) * 100) / 100;
var DBPRRate = 0.015;
var DBPR = Math.round((DBPRRate * Subtotal) * 100) / 100;
var DCARate = 0.01;
var DCA = Math.round((DCARate * Subtotal) * 100) / 100;
var totalFee = Math.round((Subtotal + DBPR + DCA) * 100) / 100;
var Subtotaldisc = Math.round((Subtotal * 0.25) * 100) / 100;
var DBPRRatedisc = 0.015;
var DBPRdisc = Math.round((DBPRRatedisc * Subtotaldisc) * 100) / 100;
var DCARatedisc = 0.01;
var DCAdisc = Math.round((DCARatedisc * Subtotaldisc) * 100) / 100;
var totalFeedisc = Math.round((Subtotaldisc + DBPRdisc + DCAdisc) * 100) / 100;
document.buildingCalc.permitFee.value = permitFee2.toLocaleString();
document.buildingCalc.planReview.value = planReview.toLocaleString();
document.buildingCalc.Subtotal.value = Subtotal.toLocaleString();
document.buildingCalc.DBPR.value = DBPR.toLocaleString();
document.buildingCalc.DCA.value = DCA.toLocaleString();
document.buildingCalc.totalFee.value = totalFee.toLocaleString();
document.buildingCalc.Subtotaldisc.value = Subtotaldisc.toLocaleString();
document.buildingCalc.DBPRdisc.value = DBPRdisc.toLocaleString();
document.buildingCalc.DCAdisc.value = DCAdisc.toLocaleString();
document.buildingCalc.totalFeedisc.value = totalFeedisc.toLocaleString();
}
}
}
<form name="buildingCalc">
<table border="0" cellpadding="5" bordercolor="#000000">
<tr>
<td width="350" valign="bottom"><span class="body">Enter the ICC valuation (round to the nearest thousand) Example: 342778.20 is 343000 </span></td>
<td align="center" valign="bottom">
<div class="body">$<input type="text" name="ICCVal">
</div>
</td>
</tr>
<tr>
<td colspan="2">
<span class="body"><input type="button" onClick="calcBuilding(ICCVal)"                                                                                       value="Calculate building permit fee"></span>
</td>
</tr>
<tr>
<td>
<div class="body">Building permit fee</div>
</td>
<td align="center" class="body">$<input type="text" name="permitFee">
</td>
</tr>
<tr>
<td>
<div class="body">Plan review 25%</div>
</td>
<td class="body">$<input type="text" name="planReview">
</td>
</tr>
<tr>
<td>
<div class="body">Subtotal</div>
</td>
<td class="body">$<input type="text" name="Subtotal">
</td>
</tr>
<tr>
<td>
<div class="body">DBPR 1.5%</div>
</td>
<td class="body">$<input type="text" name="DBPR">
</td>
</tr>
<tr>
<td>
<div class="body">DCA 1%</div>
</td>
<td class="body">$<input type="text" name="DCA">
</td>
</tr>
<tr>
<td>
<div class="body">Total building permit fee</div>
</td>
<td class="body">$<input type="text" name="totalFee">
</td>
</tr>
<tr>
<td colspan="2" class="body">
<p><strong>                                            <label>Does not include impact fees (if applicable), or Fire fees for commercial permits.</label>
</strong></p>
<p class="subpagesubheader">Fees effective Jan. 1, 2021 with 75% reduction applied </p>
</td>
</tr>
<tr>
<td>
<div class="body">Subtotal</div>
</td>
<td class="body">$<input type="text" name="Subtotaldisc">
</td>
</tr>
<tr>
<td>
<div class="body">DBPR 1.5%</div>
</td>
<td class="body">$<input type="text" name="DBPRdisc">
</td>
</tr>
<tr>
<td>
<div class="body">DCA 1%</div>
</td>
<td class="body">$<input type="text" name="DCAdisc">
</td>
</tr>
<tr>
<td>
<div class="body">Total building permit fee</div>
</td>
<td class="body">$<input type="text" `enter code here` name="totalFeedisc">
</td>
</tr>
<tr>
<td colspan="2" class="body">
<p><input type="button" onClick="clear_buildingCalc()" value="Clear calculation"></p>
</table>
</form>

最新更新