gpt4 book ai didi

jquery - 使用 jQuery Globalize 设置数字格式

转载 作者:行者123 更新时间:2023-12-01 01:59:12 26 4
gpt4 key购买 nike

我正在尝试使用 Globalize 自动格式化具有正确本地化的数字。当用户输入数值时,我需要 Globalize 来读取它,以正确的格式解析它,然后将其输出到用户输入的字段中。

我试过这样:

$(document).on('change','.format-me',function(){
var value = $(this).val();
Globalize.culture("en-US");
console.log(Globalize.format(value));
});

但它不起作用,因为记录的号码看起来与用户输入的号码完全相同。为什么 Globalize 不根据需要更改格式?

最佳答案

之所以记录的号码与输入的号码一模一样,是因为您正在调用 Globalize.format()带有字符串参数 - 然后它将简单地返回其参数,如文档所示,假设您正在使用 Globalize.js (最初称为 jQuery Globalize,后来独立于 jQuery)。 HTML 中输入控件的值被视为字符串,并且要作为数字进行处理,需要以某种方式对其进行转换。

在这种情况下,应该用 Globalize.parseFloat() 来解析它。 ,并且在记录时,您需要通过例如格式参数n2 (因为对于数字,默认格式是 i ,这很少有用——这是 Globalize.js 的陷阱之一):

$(document).on('change','.format-me',function(){
var value = $(this).val();
Globalize.culture("en-US");
var num = Globalize.parseFloat(value);
if(isNaN(num)) console.log('Parsing failed');
console.log(Globalize.format(num, "n2"));
});

但是,我不太明白以本地化格式记录数字的意义。用户以本地化格式输入数字,但对于任何处理(客户端或服务器端),它应该以国际化格式存储。稍后在向用户显示某些结果时可以使用本地化格式。

关于jquery - 使用 jQuery Globalize 设置数字格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16763381/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com