.Net Kendo HtmlHelper Ajax 多选初始值
.Net Kendo HtmlHelper Ajax MultiSelect Initial Values
我有一个 Kendo MultiSelect,它使用 ajax 从不直接相关的数据库 table 中获取 select 菜单潜在值到模型。
多个Select:
@(Html.Kendo().MultiSelect()
.Name("ContactTags")
.DataTextField("Name")
.DataValueField("TagId")
.Placeholder("Please select a tag")
.AutoBind(false)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetTags", "ContactTag");
})
.ServerFiltering(true);
})
)
上面的代码呈现 Select 菜单和 post 数据返回到控制器,我可以在其中解析它并将其发送到数据库。创建新标签时一切正常。当实体上已经存在标签时,就会出现问题。如何让 Kendo 获取现有标签并在 Multiselect 菜单中将它们标记为 selected。
在调用此视图的控制器操作中构建所选项目的列表,并将其添加到您的模型 (ViewModel)。
然后向小部件添加一个.Value()子句:
@(Html.Kendo().MultiSelect()
.Name("ContactTags")
.DataTextField("Name")
.DataValueField("TagId")
.Placeholder("Please select a tag")
.AutoBind(false)
.Value(Model.SelectedTags)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetTags", "ContactTag");
})
.ServerFiltering(true);
})
)
我有一个 Kendo MultiSelect,它使用 ajax 从不直接相关的数据库 table 中获取 select 菜单潜在值到模型。
多个Select:
@(Html.Kendo().MultiSelect()
.Name("ContactTags")
.DataTextField("Name")
.DataValueField("TagId")
.Placeholder("Please select a tag")
.AutoBind(false)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetTags", "ContactTag");
})
.ServerFiltering(true);
})
)
上面的代码呈现 Select 菜单和 post 数据返回到控制器,我可以在其中解析它并将其发送到数据库。创建新标签时一切正常。当实体上已经存在标签时,就会出现问题。如何让 Kendo 获取现有标签并在 Multiselect 菜单中将它们标记为 selected。
在调用此视图的控制器操作中构建所选项目的列表,并将其添加到您的模型 (ViewModel)。
然后向小部件添加一个.Value()子句:
@(Html.Kendo().MultiSelect()
.Name("ContactTags")
.DataTextField("Name")
.DataValueField("TagId")
.Placeholder("Please select a tag")
.AutoBind(false)
.Value(Model.SelectedTags)
.DataSource(source =>
{
source.Read(read =>
{
read.Action("GetTags", "ContactTag");
})
.ServerFiltering(true);
})
)