2014-10-06 38 views
0

我使用劍道UI 2013.2.716,特別是KendoGrid視圖模型不是int值,C#,Visual Studio 2010中,我需要更改消息「全球化現場X必須是一個數字,「在圖像中看到,並把它放在另一種語言。 The field x must be a number text.更改文本全球化「字段X必須是數字。」在KendoGrid使用

如果我在Chrome檢查元素我看到:在

視圖模型

namespace Test.Models 
{ 
    public class TestModel 
    { 
    ... 
    [DisplayName("Pos")]   
    [IsNumberAttribute(ErrorMessage = "Ingrese un número.")] 
    public int Pos { get; set; } 
    } 
} 

namespace Test.Models.CustomValidator 
{ 
    [AttributeUsage(AttributeTargets.Property)] 
    public class IsNumberAttribute : ValidationAttribute 
    { 
     public override bool IsValid(object value) 
     { 
      try 
      { 
       int numeroTemp; 
       bool esNumero = int.TryParse((string)value, out numeroTemp); 
       return esNumero; 
      } 
      catch (Exception) 
      { 
       return base.IsValid(value); 
      } 
     } 
    }  
} 

但它沒有工作,還是: enter image description here

我試着這樣做英文:(

在我看來,我有這樣的:

@(Html.Kendo().Grid<Test.Models.TestModel>(Model) 
     .Name("titulo") 
     .Columns(columns => 
     { 
      ...     
      columns.Bound("Pos").Filterable(false); 
      columns.Bound("Edad").Title("Edad").ClientTemplate("#=window.TestMantenedor.Valida(edad)#").Width(500); 
     }) 
     .ToolBar(toolbar => 
     { 
      toolbar.Create().Text("Agregar"); 
      toolbar.Save().SaveText("Modificar").CancelText("Cancelar"); 
     }) 
     .Editable(editable => 
     { 
      editable.DisplayDeleteConfirmation(false); 
      editable.Mode(GridEditMode.InCell); 
     }) 
     .Scrollable()      
     .DataSource(dataSource => dataSource 
      .Ajax() 
      .PageSize(20) 
      .Batch(true) 
      .Model(model => 
      { 
       ... 
       model.Field(p => p.Edad).DefaultValue(true); 
      }) 
      .Create("Create", "Test", new { id = id })    
      .Events(events => events.Error("error_handler")) 
      .Events(events => events.RequestEnd("success_handler")) 
     ) 
     .Filterable(filterable => filterable.Messages(messages => 
      { 
       messages.Info("Mostrar plantillas en estado"); 
       messages.Filter("Filtrar"); 
       messages.Clear("Borrar"); 
       messages.IsTrue("Valido"); 
       messages.IsFalse("No valido"); 
      }) 
     ) 
     .Pageable(p => p 
      .Messages(m => m 
      .Display("Mostrando {0}-{1} de {2} registros") 
      .Empty("No se encontraron registros") 
      .First("Ir a la primera página") 
      .Last("Ir a la última página") 
      .Next("Ir a la página siguiente") 
      .Previous("Ir a la página anterior") 
      ) 
     ) 
) 

任何幫助嗎?

回答

0

最後,經過3天嘗試了很多東西,也儘量的

How to change 'data-val-number' message validation in MVC while it is generated by @Html helper

@(Html.Kendo().Grid<Test.TestModel>(Model) 
     .Name("listado") 
     .Columns(columns => 
     { 
      columns.Bound("idElementColumn").Filterable(false); 
      ... 
     } 

以及至少解決方案,在查看結束時,我把:

<script type="text/javascript"> 
     $("#listado").on("click", function (e) { 
      $(".k-grid #idElementColumn").attr('data-val-number', 'Ingrese un número.'); 
     });  
</script> 
相關問題