用于mvc的kendo multiselect清除提交时的选定值

时间:2015-06-25 10:59:56

标签: kendo-ui

我的剑道多选控制如下所示清除页面提交时的选定值。当我提交页面并且它包含验证错误时,多选中的所选项目将丢失。即使它填充了控制器的HttpPost方法。请帮我找到解决此问题的方法。

@(Html.Kendo().MultiSelectFor(m => m.GemeentesIds)                  
    .HtmlAttributes(htmlAttrMultiselect)
    .DataTextField("Name")
    .DataValueField("Id")
    .Placeholder(Model.Disabled ? "" : "Selecteer gemeentes indien van toepassing...")
    .Value(Model.Gemeentes)                                 
    .AutoBind(false)
    .DataSource(source => {
        source.Read(read => {
             read.Action("GetGemeentes", "General").Data("GemeenteFilter").Type(HttpVerbs.Post);
        })
        .ServerFiltering(false);
    })
                                            )

控制器:

if (model.GemeentesIds != null)
    model.Gemeentes = _organisatorischeEenheidRepository.GetGemeentesByIds(model.GemeentesIds);

1 个答案:

答案 0 :(得分:1)

试试这个,看看是否有帮助。还使用Name()方法指定Name属性。
在你的情况下,我认为应该是Gemeentes。
因此,您的多选代码如下所示:

@(Html.Kendo().MultiSelectFor(m => m.GemeentesIds)  
    **.Name("Gemeentes")**                
    .HtmlAttributes(htmlAttrMultiselect)
    .DataTextField("Name")
    .DataValueField("Id")
    .Placeholder(Model.Disabled ? "" : "Selecteer gemeentes indien van toepassing...")
    .Value(Model.Gemeentes)                                 
    .AutoBind(false)
    .DataSource(source => {
        source.Read(read => {
             read.Action("GetGemeentes", "General").Data("GemeenteFilter").Type(HttpVerbs.Post);
        })
        .ServerFiltering(false);
    })
)

帮助我解决类似问题的来源链接: http://www.telerik.com/forums/multiselect-and-form-not-sending-values-back