我目前使用弹出式模板遇到了一些Kendo Grid问题。她的代码:
index.cshtml
@(Html.Kendo().Grid<EmployeeModel>().Name("grid")
.Columns(columns => {
columns.Command(command => command.Edit()).Width(55);
columns.Bound(p => p.FullName).Width(180);
})
.ToolBar(toolbar => toolbar.Create())
.Editable(editable => editable.Mode(GridEditMode.PopUp).TemplateName("EmployeeEditor"))
.Pageable()
.Sortable()
.Scrollable()
.HtmlAttributes(new { style = "height:430px;" })
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(20)
.Events(events => events.Error("error_handler"))
.Model(model => { model.Id(p => p.Id); model.Field(p => p.Id); })
.Create(create => create.Action("create", "employee"))
.Read(read => read.Action("read", "employee"))
.Update(update => update.Action("Update", "employee"))
.Destroy(update => update.Action("Destroy", "employee"))
)
在我的自定义编辑器上,我有一个调用静态函数的多节点 - GetSuperiorIds - 它将加载value属性:
@(Html.Kendo().MultiSelect().Name("employees").DataTextField("FirstName").DataValueField("Id").Placeholder("Select employees...").AutoBind(true).Events(e => { e.Open("open"); })
.Value(GetSuperiorIds(XX))
.DataSource(source => {
source
.Read(read => {
read.Action("GetEmployees", "employee", new { id = @Html.Raw("${Id}") });
})
.ServerFiltering(true);
})
)
我需要GetSuperiorIds的变量(放在这里的内容),Model.Id返回null。
最初我在阅读Action时遇到了麻烦,因为它还需要模型ID。幸运的是,Html.Raw(&#34; $ {Id}&#34;)返回相同的值,但我似乎无法将其用作静态函数的参数。
有没有其他方法可以获得模型ID?
提前致谢。