【问题标题】:Hide headerTemplate of kendoMultiSelect隐藏 kendoMultiSelect 的 headerTemplate
【发布时间】:2017-06-13 08:46:48
【问题描述】:

我必须在 UI 中使用带有复选框的 kendo-multi-select 控件,因为我使用了如下模板绑定:

$("#kMultiSelect").kendoMultiSelect({
   animation: false,
   autoClose: false,
   itemTemplate: "<input type='checkbox'/><span> #: data #</span>",
   dataSource: {
   data: ["Short item", "An item with really", "really long", 
           "text","six","seven","SSSS"]
  },
});

其中kMultiSelect 是html &lt;select&gt; 的id。我得到了这样的自定义 UI,请注意我在图像 中用黄色标记四舍五入的部分。

实际上我的客户不需要在标题中显示那些选定的项目,他只想要一个带有多选复选框的组合框。如何从kendoMultiSelect 中排除该选项,这可能吗?

【问题讨论】:

  • 您希望在组合框文本区域中显示什么?
  • @Shai: 别的什么都不需要用remove选项显示选中的item,如果显示选中的item count就好了

标签: javascript jquery html kendo-ui kendo-multiselect


【解决方案1】:

您可以使用 CSS 从标题中隐藏所选项目:

#multiselect_taglist {
  display: none;
}

要改为显示所选项目的数量,请像 Sandman 建议的那样使用 tagMode: "single"

【讨论】:

  • 感谢您的帮助
【解决方案2】:

如果您想有条件地从视图中隐藏所有选定的项目,您可以隐藏#multiselect_taglist 例如

var header = $("#multiselect_taglist");
header.hide();

或者,您还可以使用 CSS 来隐藏 all 多选控件的 #multiselect-taglist(如 @Shia 所建议的那样):

#multiselect_taglist {
  display: none;
}

Dojo example 演示隐藏标题项。

另一个选项是显示可以使用tagMode 实现的所选项目的计数

$("#multiselect").kendoMultiSelect({
  ...    
  tagMode: "single"    
});   

Dojo example 演示 tagMode 正在使用中。

【讨论】:

  • 完美..!感谢您的帮助
  • 很好的答案,尤其是 tagMode 部分!当有其他选择时,我建议避免使用 jQuery,比如使用 CSS。
  • @Shai 好点,我更新了完整的答案。我不同意的唯一情况是需要有条件地隐藏/显示所选项目。但是,似乎 OP 不需要这个。
  • 实际上它与 jQuery 的工作方式相同,因为两者都必须使用选择器来查找要影响的元素。在这两者中,您都将使用额外的 id 或类将选择范围缩小到您想要影响的多选元素,例如 #area1 #multiselect#multiselect.notaglist
  • 是的,但也许我应该更具体一些,“有条件的”在特定场景中需要显示/不显示项目,例如在超过一定数量的选定项目。无论如何,这没有具体说明,OP 现在有很多潜在的解决方案可供使用。 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-11
  • 1970-01-01
  • 1970-01-01
  • 2011-07-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多