【发布时间】:2018-08-10 15:39:12
【问题描述】:
这行得通:
var x = parseFloat($(this).val());
$(this).val(x.toFixed(2));
不是这个:
$(this).val(parseFloat($(this).val())).toFixed(2);
我得到“toFixed 不是函数”。
我不明白为什么!
【问题讨论】:
标签: jquery parsefloat tofixed
这行得通:
var x = parseFloat($(this).val());
$(this).val(x.toFixed(2));
不是这个:
$(this).val(parseFloat($(this).val())).toFixed(2);
我得到“toFixed 不是函数”。
我不明白为什么!
【问题讨论】:
标签: jquery parsefloat tofixed
那是因为您在 jQuery 对象而不是值上应用 toFixed。只需将其移到一个括号内即可。
$(this).val(parseFloat($(this).val()).toFixed(2));
不过,将代码拆分为更简单、更易于理解的语法总是一个好主意。使用代码压缩器来处理构建大小。
【讨论】:
另一种写法是val(function)
$(this).val(function(_, currVal){
return parseFloat(currVal).toFixed(2);
});
您在第二个版本中的问题是链接不正确
【讨论】: