繁体   English   中英

带有千位分隔符的简单乘法计算器

[英]Simple multiplication calculator with thousand separator

这是一个简单的乘法计算器,它将框 1 值 x 框 2 值相乘并产生结果。 我想要实现的是所有三个框都应该添加千位分隔符,同时保留小数部分。

如果我在框 1 或 2 中输入 1000,它应该自动转换为 1,000

例如:1232323 x 23 应为 1,232,323 x 23 = 28,343,429

 function calculate() { var myBox1 = document.getElementById('box1').value; var myBox2 = document.getElementById('box2').value; var result = document.getElementById('result'); var myResult = myBox1 * myBox2; result.value = myResult; }
 <!DOCTYPE html> <html> <head> <meta charset=utf-8 /> <title>JS Bin</title> </head> <body> <table width="80%" border="0"> <tr> <th>Box 1</th> <th>Box 2</th> <th>Result</th> </tr> <tr> <td><input id="box1" type="text" oninput="calculate()" /></td> <td><input id="box2" type="text" oninput="calculate()" /></td> <td><input id="result" /></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table> </body> </html>

您可以使用以下内容作为答案。

 function calculate() { var myBox1 = updateValue('box1'); var myBox2 = updateValue('box2'); var myResult = myBox1 * myBox2; adTextRes('result', myResult) } function updateValue(nameOf) { var inputNo = document.getElementById(nameOf).value; var no = createNo(inputNo); adTextRes(nameOf, no); return no; } function adTextRes(nameOf, no) { var asText = String(no).replace(/\\B(?=(\\d{3})+(?!\\d))/g, ","); document.getElementById(nameOf).value = asText; } function createNo(textin) { return Number(textin.replace(/,/g, "")); }
 <table width="80%" border="0"> <tr> <th>Box 1</th> <th>Box 2</th> <th>Result</th> </tr> <tr> <td><input id="box1" type="text" oninput="calculate()" /></td> <td><input id="box2" type="text" oninput="calculate()" /></td> <td><input id="result" /></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table>

暂无
暂无

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

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