- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个使用 jQuery 计算货币的脚本。它工作正常,但是当我写入大于 999,99
的值时,当我使用掩码并将结果转换为货币格式时,它会返回一个有错误的值。我该如何解决这个问题?
已更新
$(document).ready(function() {
$('.money').mask("#.##0,00", {reverse: true});
});
accounting.settings = {
currency: {
symbol : "", // default currency symbol is '$'
format: "%s%v", // controls output: %s = symbol, %v = value/number (can be object: see below)
decimal : ",", // decimal point separator
thousand: ".", // thousands separator
precision : 2 // decimal places
},
number: {
precision : 0, // default precision on numbers is 0
thousand: ".",
decimal : ","
}
}
function calc(){
var plano = parseFloat($("#regimento").val().replace(/,/g, '.'));
var gasto = parseFloat($("#gasto_contabilidade").val().replace(/\./g, ',').replace(/,/g, '.'));
var meses = parseInt( $("#meses").val());
var resultado_gasto = parseFloat(gasto * meses);
var resultado_plano = parseFloat(plano * meses);
var result = resultado_gasto - resultado_plano;
result = accounting.formatMoney(result);
console.log(result)
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.mask/1.14.15/jquery.mask.js"></script>
<script src="http://dubsolucoes.com.br/razonet/wp-content/themes/razonet_wp/assets/javascript/vendor/accounting.min.js"></script>
<select name="" id="regimento" class="select">
<option value="19,90">MEI</option>
<option value="85,90">SIMPLES SERVIÇO</option>
<option value="199,90">SIMPLES COMÉRCIO E INDÚSTRIA</option>
</select>
<input id="gasto_contabilidade" type="text" class="money" value="100000">
<select id="meses" class="select">
<option value="12">12</option>
<option value="13">13</option>
</select>
<input type="button" onclick="calc()" value="Calculate">
最佳答案
您需要记住,当从 select
获取 .val()
时,它以字符串形式出现,您应该在进行一些计算之前对其进行解析。
另外,我不知道你为什么使用 input type="tel"
用作号码,请使用 type="number"
下面的代码可以正常工作,但没有显示NaN
...我只是不知道计算结果是否是您想要的,
OBS:您不能在 #gasto_contabilidade
中使用 1.234,55
等值,它必须是 1234.55
> 或 1234,55
(这只是因为您要替换 ,
。
function calc(){
var plano = parseFloat($("#regimento").val().replace(/,/g, '.'));
var gasto = parseFloat($("#gasto_contabilidade").val().replace(/\./g, ',').replace(/,/g, '.'));
var meses = parseInt( $("#meses").val());
var resultado_gasto = parseFloat(gasto * meses);
var resultado_plano = parseFloat(plano * meses);
var result = resultado_gasto - resultado_plano;
console.log(result)
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="" id="regimento" class="select">
<option value="19,90">MEI</option>
<option value="85,90">SIMPLES SERVIÇO</option>
<option value="199,90">SIMPLES COMÉRCIO E INDÚSTRIA</option>
</select>
<input id="gasto_contabilidade" type="number" class="valor" value="1000">
<select id="meses" class="select">
<option value="12">12</option>
<option value="13">13</option>
</select>
<input type="button" onclick="calc()" value="Calculate">
关于javascript - JS : Calculating values that have dot and comma (i. e 1.000,00),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52665710/
编辑:在我的示例中,=> 表示“评估为”,而 -> 表示“扩展到 macroexpand-1” . 我正在努力研究 Common Lisp 中的嵌套反引号,我想我已经非常接近理解它了,多亏了其他几个
我正在创建一个必须按以下方式格式化的请求字符串: http://staging.myproject.com?tags=tag1,tag2,tag3 在用户编写标签的窗体上有一个 EditText 对话
我的文字如下: "text","1","more, more text","3" 任何人都可以告诉我我必须使用什么正则表达式分隔符才能获得以下内容: text 1 more, more text 3
我有一个像下面这样的字符串 - value1, value2, value3, value4, "value5, 1234", value6, value7, "value8", value9, "v
我有一个用户表,其中包含一列(例如兴趣),以逗号分隔的兴趣 ID 作为值。例如 user interests A 12,13,15 B 10,11,12,15 C 9,13
我有一个用户表,其中包含一列(比如兴趣),其中以逗号分隔的兴趣 ID 作为值。例如 user interests A 12,13,15 B 10,11,12,15 C 9,1
因此,我有一个值为“app、beta、theta”的单元格,我想查看填充有上述单元格的列是否包含我的单元格值。例如:AA 列有这些单元格:“app”; “theta,应用程序”; “theta,app
以这个小示例代码为例: struct Test{ operator int() const{ return 0; } }; Test test(){ retur
我需要一个代码来计算 Richtextbox 行中有多少个逗号。如果有 4 个或更多逗号,则执行某些操作,否则删除行。 最佳答案 这是强制性的 LINQ 答案: Dim cnt As Integer
我正在查看字符串是否有逗号。 假设我有两个用户名“David, Boon”和“David Blind”。 我需要根据用户名中是否存在“,”的条件编写一个 if 循环。有没有办法检查? .Net 中的包
我正在使用FCSA Number处理 AngularJS 中的小数输入。 如果我使用 maxDecimals 选项,它几乎可以按预期工作。对于两位小数,“100.333”等输入将转换为“100.33”
我现在如何在 Elixir 中获得低于字符串的结果。 ['x1', 'x2'] 我尝试使用 enum.join 但没有获得所需的数据 到 'x1,x2' 最佳答案 如果我理解正确,你应该使用Enum.
我现在如何在 Elixir 中获得低于字符串的结果。 ['x1', 'x2'] 我尝试使用 enum.join 但没有获得所需的数据 到 'x1,x2' 最佳答案 如果我理解正确,你应该使用Enum.
我有用逗号分隔的字符串。 首先,我想检查是否包含逗号的字符串。 在我的应用程序中,字符串如下所示: NSString *str=@"1,2,3"; 如何检查它是否包含逗号? 最佳答案 我使用以下
我正在尝试解决逗号代码项目以自动执行无聊的事情。我在第一个 if 语句方面遇到了麻烦。我正在尝试输出字符串:“苹果、香蕉、 bean 腐和猫”。由于某种原因,它跳过了列表中的第一项。 编辑:本教程没有
我正在尝试创建一个 onkeydown() 函数,强制文本输入字段中逗号 (",") 后的所有字母大写。 我知道我可以使用这个函数将所有字母变为大写: function makeUppercase(f
我有以下代码。 $(document).ready(function(){ $('input[type="checkbox"]').click(function(){ elem =
使用 JavaScript,什么是将点替换为逗号的正确方法(对于欧盟货币),例如: 2000.65 将是 2000,65 而不是 2,000.65 39.20 将是 39,20 我不确定 cost.r
打印中的,加了一个空格 >>> print "a","b" a b 如果我需要一个\t,我放 >>> print "a","\t","b" a b 如何将 , 的输出更改为 \t? 最佳答
我需要检查某些文本是否仅包含小写字母 a-z 和逗号 (",")。 在 Python 中执行此操作的最佳方法是什么? 最佳答案 import re def matches(s): return
我是一名优秀的程序员,十分优秀!