【v14】新版chrome自定义公式存在乱码
本帖最后由 littleknife 于 2024-12-17 17:14 编辑调研编号:SJS-27776
粘贴这个字符串:=V("E.A","A.R1020","S.MRpt","FY.FY2021","P.M_M09","BP.ERAdj","C.EC","AT.EOther","CT.EndingBalance","MC.MCNone","MG.PRCGAAP","DS.Actual","C4.C4None","ISFLOAT.1")
会将A.R变成1020,找不到原因,官网demo也不能复现,旧版的chrome就没问题。请问有什么排查方式吗
更新了最新的chrome会出现这个问题
您好,您具体用的是哪个版本的SpreadJS?我在14.2.6中也没有复现出这个问题。 Joestar.Xu 发表于 2024-12-6 17:39
您好,您具体用的是哪个版本的SpreadJS?我在14.2.6中也没有复现出这个问题。
你好,现在定位到了原因,这个Demo可以复现
您好,这部分代码是为了实现什么需求:
Joestar.Xu 发表于 2024-12-17 10:23
您好,这部分代码是为了实现什么需求:
为了实现全局格式化的需求
了解了,这边调研一下,后续有进展我会在本贴中回复您。 本帖最后由 Lynn.Dou 于 2025-1-7 11:33 编辑
您好,经调研,我们发现您设置的CultureInfo相关代码有误,以下是正确的设置代码:
var culture = new GC.Spread.Common.CultureInfo();
culture.NumberFormat.numberDecimalSeparator = ",";
culture.NumberFormat.numberGroupSeparator = " ";
// culture.NumberFormat.listSeparator = '|';
GC.Spread.Common.CultureManager.addCultureInfo("myCulture", culture);
GC.Spread.Common.CultureManager.culture("myCulture");
在设置了正确的代码后,在控制台中会提示:
也就是说默认情况下listSeparator的值为","。
而您的自定义CultureInfo中将numberDecimalSeparator 的值也修改为了","。
导致二者发生了冲突。
如果将listSeparator设置为"|",将不再会报错,但是会出现下图中的情况:
我不太确定您为什么要使用CultureInfo来实现全局格式化,CultureInfo是有标准的,它与各个地区文化的阅读、打字方式等有关,用CultureInfo来实现全局格式化的需求应该不是一个最佳方案。
能否请您再详细描述一下全局格式化的需求,这边调研看看是否有其他的方案。
请问楼主问题解决了吗?如果仍有疑问,如楼上所述,请再详细描述一下全局格式化的需求,以便问题的进一步调研。
页:
[1]