2012-04-03 89 views
2

我有一个TreeView,一旦用户将物品放到所需的位置,它会显示一个对话框并要求确认,如果用户选择取消,我将如何取消物品的放置所以它回到原来的位置?我目前的代码如下但是,这不是工作:kendo ui取消treeview drop

var newDiv = $(document.createElement('div')); 

newDiv.html('Are you sure you want to move the item: ' + title); 
newDiv.dialog({ 
    autoOpen: true, 
    width: 600, 
    buttons: { 
     "Save": function() { 
      $(this).dialog("close"); 
     }, 
     "Cancel": function() { 
      $(this).dialog("close"); 

      e.setValid = false; 

     } 
    } 
}); 

我也想这样做的dragend事件相同类型的代码,并使用e.preventDefault();没有更多的运气

回答

3

drop事件处理函数提供了setValid函数,该函数可以防止发生丢弃。例如:

function onDrop(e) { 
    e.setValid(confirm('Do you wish to move this item here?')); 
} 

$("#treeView").kendoTreeView({ 
    // ... 
    dragAndDrop: true, 
    drop: onDrop 
}); 

我写了一个fiddle,它演示了这是如何工作的。

1

你尝试使用下降事件和呼叫如果条件不满足,防止出现违约?