-2

我对 jquery 中的逗号有一点问题,

vmaxy2 = double.Parse(maxy2.Text , CultureInfo.InvariantCulture);
// C# part : value  : 0,3 

Javascript部分:

var maxim2 = <%= vmaxy2 %>  ;

jQuery部分:

 $.plot($("#chart"), data, { yaxes: [{ min: 0},{min : 0 , position: "right",tickFormatter: Pourcentage , tickDecimals: 2 , max : maxim2  }],
                                       xaxis: { mode : 'time', minTickSize: [1, "day"] }
                                        }); 

但结果是这样的:

3.00

我的代码有什么问题?

4

2 回答 2

2

这就是问题:

// C# part : value  : 0,3 

您只是在查看默认ToString()处理的结果。如果您将其传播到 Javascript,那么您很可能没有在部分使用不变的文化。

我怀疑当您说“Javascript 部分”时,您实际上是指“ASP.NET MVC 中的 Razor”部分,在这种情况下您可以使用:

var maxim2 = <%= vmaxy2.ToString(CultureInfo.InvariantCulture) %>;

这样你最终会得到 Javascript:

var maxim2 = 0.3;

...这就是你想要的。

于 2013-07-26T12:50:25.763 回答
0

InvariantCulture逗号视为分隔符。像这样:1,000.75。你应该解析0.3,而不是0,3

要么,要么不使用InvariantCulture,而是使用该值的适当值。

于 2013-07-26T12:49:15.260 回答