在版本2016.3.914之前,可以通过调用e.setStatusClass("k-denied");取消放置事件

$("#treeview").kendoTreeView({
  dragAndDrop: true,
  dataSource: [
    { text: "foo", items: [
      { text: "bar" }
    ] }
  ],
  drag: function(e) {
    e.setStatusClass("k-denied");
  }
});


但是,从版本2016.3.914开始,预定义的状态类别k-denied不再起作用。 documentationk-i-应该作为类前缀添加,但是k-i-denied不起作用,因为取消图标没有出现,并且仍然允许放置。

请注意,自版本2016.3.914起,预定义状态类的命名约定为k-i-className。


  请注意,状态类返回时不带k前缀
  e.statusClass,但是在设置预定义时需要此前缀
  通过e.setStatusClass的状态类。如果设置,则不需要前缀
  自定义状态CSS类。

最佳答案

该文档对一件事是正确的。我们必须使用k-i-前缀。但是,文档没有告诉您的事实是,kendo已将预定义状态类从k-denied更改为k-i-cancel

$("#treeview").kendoTreeView({
  dragAndDrop: true,
  dataSource: [
    { text: "foo", items: [
      { text: "bar" }
    ] }
  ],
  drag: function(e) {
    e.setStatusClass("k-i-cancel");
  }
});

09-18 18:47