剑道号格式改变了文化

时间:2016-09-26 11:14:30

标签: kendo-ui grid culture

我想在网格中将数字列值格式化为55,25,236.30。我创建了一个JS函数,并从网格中的列模板调用。我的JS功能:

function NumberFormater(Price) {
    kendo.culture("en-US");
    kendo.cultures.current.numberFormat.groupSize = [3,2];
    return kendo.toString(Price, "##,#.00");
}

但价值显示为5,525,236.30。根据此linkgroupSize的默认值为[3]。是否无法在C#中设置多个值,如[3,2],如numberformat?

1 个答案:

答案 0 :(得分:0)

确保NumberFormater函数收到数字参数。下面是一个有效的测试页面。

另外,我不确定每次执行此功能时都需要设置culturegroupSize



<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Untitled</title>

    <link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.3.914/styles/kendo.common.min.css">
    <link rel="stylesheet" href="http://kendo.cdn.telerik.com/2016.3.914/styles/kendo.default.min.css">

    <script src="http://code.jquery.com/jquery-1.12.3.min.js"></script>
    <script src="http://kendo.cdn.telerik.com/2016.3.914/js/kendo.all.min.js"></script>
  </head>
  <body>

    <input class="k-textbox" type="number" value="5525236.3" />
    <button id="format" class="k-button">Format numeric value</button>

    <script>

      $("#format").click(function(){
        var formattedValue = NumberFormater(parseFloat($(".k-textbox").val()));
        alert(formattedValue);
      });

      function NumberFormater(Price) {
        kendo.culture("en-US");
        kendo.cultures.current.numberFormat.groupSize = [3,2];
        return kendo.toString(Price, "##,#.00");
      }  

    </script>
  </body>
</html>
&#13;
&#13;
&#13;