Kendo NumericTextBox百分号

时间:2014-05-22 11:40:46

标签: razor kendo-ui kendonumerictextbox

我正在尝试将百分号添加到网格中。我找到了一些使用此解决方法的帖子。但这不起作用。

“#\%” - >导致javascript错误

@(Html.Kendo().NumericTextBoxFor(m => m)
    .HtmlAttributes(new { style = "width:100%" })
    .Format("\\# \\%")
)

问候

3 个答案:

答案 0 :(得分:1)

百分比格式为p。请参阅此处的文档:http://docs.telerik.com/kendo-ui/getting-started/framework/globalization/numberformatting

所以你应该使用:

@(Html.Kendo().NumericTextBoxFor(m => m)
    .HtmlAttributes(new { style = "width:100%" })
    .Format("p")
)

标准数字格式:

  • n代表数字

      

    kendo.culture("的en-US&#34); kendo.toString(1234.567," n"); //1,234.57   kendo.toString(10.12," n5"); //10.12000 kendo.toString(10.12," n0"); // 10   kendo.culture(" DE-DE&#34); kendo.toString(1234.567," n3"); //1.234,567

  • c代表货币

      

    kendo.culture("的en-US&#34); kendo.toString(1234.567," c"); //$1,234.57   kendo.culture("的en-US&#34); kendo.toString(1234.567," c0"); // $ 1,235个   kendo.culture(" DE-DE&#34); kendo.toString(1234.567," c3"); //1.234,567€

  • p表示百分比(数字乘以100)

      

    kendo.culture("的en-US&#34); kendo.toString(0.222," p"); // 22.20%   kendo.culture("的en-US&#34); kendo.toString(0.222," p0"); // 22%   kendo.culture(" DE-DE&#34); kendo.toString(0.22," p3"); //22.000%

  • e为指数

      

    kendo.toString(0.122," e"); //1.22e-1 kendo.toString(0.122," e4"); //1.2200e-1

答案 1 :(得分:1)

我在telerik论坛(http://www.telerik.com/forums/how-to-show-a-percentage-dollar-symbol

中找到了解决方案
 columns.Bound(e => e.ContractPercent).ClientTemplate("\\#=kendo.format(\"{0:p}\", ContractPercent / 100)\\#").EditorTemplateName("NumberPercent");

问候

答案 2 :(得分:0)

对于网格,您可以使用:

columns.Bound(e => e.Percent).ClientTemplate("#=Percent# %")