我在项目中使用Grid.Mvc,我想改变网格语言。要做到这一点首先我创建了Gridmvc.lang.fr.js
文件我的语言:
/***
* Grid.Mvc French language (fr-FR) http://gridmvc.codeplex.com/
*/
window.GridMvc = window.GridMvc || {};
window.GridMvc.lang = window.GridMvc.lang || {};
GridMvc.lang.fr = {
filterTypeLabel: "Type: ",
filterValueLabel: "Valeur:",
applyFilterButtonText: "Applique",
filterSelectTypes: {
Equals: "Egale",
StartsWith: "commance par",
Contains: "contient",
EndsWith: "fini par",
GreaterThan: "plus que",
LessThan: "moin que"
},
code: 'fr',
boolTrueLabel: "Vrai",
boolFalseLabel: "faux",
clearFilterLabel: "Vide"
};
然后在我看来我做了这个:
@Html.Grid(Model).Named("offresGrid").Columns(columns =>
{
columns.Add(item => item.REGION.NOM)
.Filterable(true)
.Sortable(true); ...
}).WithPaging(20)
<script>
$(function () {
pageGrids.offresGrid.lang = GridMvc.lang.fr;
});
</script>
gridmvc.js
的一部分:
//load current lang options:
this.lang = GridMvc.lang[this.options.lang];
if (typeof (this.lang) == 'undefined')
this.lang = GridMvc.lang.en;
但是当我点击Filter Icon
时,它没有用,空的Popup被选中没有值或按钮。
任何人都知道默认情况下如何将语言更改为Lang.fr?
答案 0 :(得分:4)
我只是找到解决这个问题的另一种方法,我希望它可以帮助别人。 我创建了自己的lang文件
gridmvc.lang.es.js
在包中的mvcgrid.js之后包含它
bundles.Add(new ScriptBundle("~/bundles/mvcgrid").Include(
"~/Scripts/gridmvc.js",
"~/Scripts/gridmvc.lang.es.js"));
然后使用SetLanguage来使用它:
@Html.Grid(Model).SetLanguage("es").Columns(...)...
答案 1 :(得分:1)
如果您无法在默认情况下更改当前语言,则只需将Gridmvc.lang.fr.js
引用放在Layout和此脚本中:
<script>
$(function () {
pageGrids.offresGrid.lang = GridMvc.lang.fr;
});
</script>
关于GridMVC.js
中的此代码段:
this.lang = GridMvc.lang[this.options.lang];
if (typeof (this.lang) == 'undefined')
this.lang = GridMvc.lang.fr;//try this but I am not sure. Because it supposes to update the lang section
// Where the lang is situated or add the first code above there.
我希望它会有所帮助。