我要在MultiselectBox自身的项目加载后向MultiselectBox的数据源添加额外的项目(具有Name和ID属性)。

这是我的MultiselectBox:

@(Html.Kendo().MultiSelect()
   // .Events(e=>
     //   e.Select("Select"))
  .Name("lstStatus")
  .DataTextField("DESCRIPTION")
   .DataValueField("REFERENCEID")

  // .AutoBind(false)

   .Placeholder("Select Case Status")
   .Value(GetPreSelectedStatusList()) //Adds initial values

   .DataSource(source =>
   {
       source.Read(read =>
       {
           read.Action("GetDefinitionDetails", "Definition", new { definitionCode = "CASE_STATUS", addEmptyRow = false });
       })
       .ServerFiltering(true);

   }))


Js:

var list = $("#lstStatus").data("kendoMultiSelect");
 list.dataSource.add({
     REFERENCEID: 1,
     DESCRIPTION: "SELECT ALL"
 });


使用此设置,所有项目都将加载到multiselectbox,但是当我单击文本框时,看不到自定义添加的项目(即“全选”)。
当我将Multiselectbox的AutoBind设置为false时,我可以在组合框上看到初始值,但是当我单击multiselect的textarea时,只能看到“全选”项。无法加载其他项目。

最佳答案

为什么不尝试使用MultiSelect中的(占位符)属性

.Placeholder("Select All")


如果不是,那么您也可以尝试在数据绑定事件中添加数据

.Events(ev=>ev.DataBound("JavaScriptFunction"))

关于javascript - Kendo MVC-如何在MultiselectBox上向数据源添加其他项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20493277/

10-13 06:45