Kendo ui下拉列表删除特定项目

时间:2014-05-08 19:31:12

标签: javascript angularjs kendo-ui kendo-dropdown kendo-datasource

我有一个从数据源填充的下拉列表。在特定事件发生后,我想要使用id = 22从我的下拉列表中删除一个项目。 (我知道它的奇怪和硬编码,但没有多少时间留下新手)。那可能吗?我怎么能这样做?

2 个答案:

答案 0 :(得分:4)

这是使用Kendo DataSource删除方法完成任务的快速而肮脏的方法。它假定您的下拉列表绑定到一个包含名为" id"的属性的对象。如果您正在使用标准文本/值键值对象,则将if语句替换为if (item.Value == 22)

var dropdown = $('#dropDownId').data("kendoDropDownList");

var raw = dropdown.dataSource.data();
var length = raw.length;

var item, i;
for(i=length-1; i>=0; i--){

  item = raw[i];
  if (item.id == 22) {
    dataSource.remove(item);
    break;
  }

}

来源:http://blogs.telerik.com/kendoui/posts/13-01-29/adding_and_removing_items_in_kendo_data_datasource

答案 1 :(得分:0)

您可以访问此项目的父项,然后将其作为父项的子项删除:

  document.getElementById("22").parentNode.removeChild(document.getElementById("22"));

getElementById("22")获取一个ID为“22”的元素

parentNode是元素的父级。在您的情况下,它是下拉列表

removeChild(document.getElementById("22"))将指定的孩子从其专利中删除。在您的情况下,一个id为“22”的元素。