Я хочу использовать внешний шаблон в ClientTemplate столбца, как это:использование kendo.template (внешний шаблон) в KendoUI MVC Сетка ClientTemplate (колонка)
@(Html.Kendo().Grid<Project>().Name("Projects").Columns(
cols =>
{
cols.Bound(m => m.LetterNumber);
cols.Bound(m => m.CityName);
cols.Bound(m => m.OrganName);
cols.Bound(m => m.DateString);
cols.Bound(m => m.EngineersCount);
cols.Bound(m => m.ExpertTypeString);
cols.Bound(m=>m.ProjectId).Title("").ClientTemplate("#buttonsTemplate(data)#");
}).DataSource(
ds => ds.Ajax().Read("GetList", "Projects"))
)
<script type="kendo/x-template" id="buttonsTempate">
#switch(State){
case 0:#
<a href="@Url.Action("SelectEngineers")?pid=#=ProjectId#">انتخاب مهندسین</a>
#break;
case 1:#
<a href="@Url.Action("Print")?pid=#=ProjectId#">چاپ نامه</a>
<a href="@Url.Action("SelectEngineers")?pid=#=ProjectId#">انتخاب مهندسین</a>
#break;
}#
</script>
<script>
var buttonsTemplate = kendo.template($("#buttonsTempate").html());
</script>
Но я получаю пустой столбец.
Если я использую внутренний (встроенный) шаблон, он отлично работает:
@(Html.Kendo().Grid<Project>().Name("Projects").Columns(
cols =>
{
cols.Bound(m => m.LetterNumber);
cols.Bound(m => m.CityName);
cols.Bound(m => m.OrganName);
cols.Bound(m => m.DateString);
cols.Bound(m => m.EngineersCount);
cols.Bound(m => m.ExpertTypeString);
cols.Bound(m => m.ProjectId).Title("").ClientTemplate("#switch(State){case 0:#"
+ "<a href='" + @Url.Action("SelectEngineers") + "?pid=#=ProjectId#'>انتخاب مهندسین</a>"
+ "#break;case 1:#"
+ "<a href='" + @Url.Action("Print") + "?pid=#=ProjectId#'>چاپ نامه</a>"
+ "<a href='" + @Url.Action("SelectEngineers") + "?pid=#=ProjectId#'>انتخاب مهندسین</a>"
+ "#break;}#");
}).DataSource(
ds => ds.Ajax().Read("GetList", "Projects")).DoConfig()
)
Но я предпочитаю внешний шаблон для такого длинного шаблона. Любая идея в чем проблема?
Есть ли у вас попытался поместить шаблоны в шаблон редактора (View/Shared/EditorTemplates)? – Vanice
Это не имеет смысла. Кроме того, работает ли шаблон сервера с привязкой ajax? – Mahmoodvcs