2012-04-03 3 views
2

У меня есть TreeView, который после того, как пользователь отбрасывает элемент в нужную позицию, отображает диалоговое окно и запрашивает подтверждение, если пользователь отменил отмену, как бы я также отменил размещение элемента поэтому он возвращается в исходное положение? мой текущий код ниже, но разве рабочая:kendo ui cancel 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

Пробовали ли вы использовать падение событие и вызов предотвращают дефолт там, если условие не выполняется?

Смежные вопросы