Telerik TreeView показывает модальное jquery вместо подтверждения javascript OnNodeDropped - PullRequest
0 голосов
/ 07 октября 2011

Есть ли способ использовать модальное диалоговое окно jquery вместо сообщения подтверждения javascript с Treeview?Когда пользователь перетаскивает узел на другой узел в дереве, я выполняю клиентское событие «OnClientNodeDropping», и я хочу показать диалоговое окно jquery с просьбой подтвердить перемещение.Я бы хотел, чтобы кнопки ОК и Отмена модального диалога передавали значение в args.set_cancel (dialog_result);Когда я пытаюсь это сделать, страница выполняется до того, как диалоговое окно может вернуть истинное или ложное подтверждение.Как я могу заменить подтверждение старой школы на модальное диалоговое окно jquery

function OnNodeDropped(sender, args) {
        var srcNode = args.get_sourceNode();
        var destNode = args.get_destNode();
        var dNode = destNode._contentElement.innerHTML.indexOf("inActiveCategory");
        if (dNode >= 0) {
    //Call a modal dialog here and return true of false instead of using the old school confirm
            var result = confirm("This category is inactive. Moving to " + destNode.get_text() + " will set " + srcNode.get_text() + " to inactive as well! ");
    //get the return value from the dialog, is it canceled or ok 
            args.set_cancel(dialog_result);
        }
    }

1 Ответ

0 голосов
/ 17 октября 2011

Одна вещь, которую я сразу заметил, заключается в том, что опубликованный вами код использует OnNodeDropped (или, по крайней мере, это название функции), а не OnClientNodeDropping. Однако, если предположить, что это действительно та функция, которую вы используете, все, что вам действительно нужно добавить, - это проверка результата в диалоговом окне. Итак, в вашем примере:

function OnNodeDropped(sender, args) {
    var srcNode = args.get_sourceNode();
    var destNode = args.get_destNode();
    var dNode = destNode._contentElement.innerHTML.indexOf("inActiveCategory");

    if (dNode >= 0) {

       //Call a modal dialog here and return true of false instead of using the old school  confirm
       var result = confirm("This category is inactive. Moving to " + destNode.get_text() + " will set " + srcNode.get_text() + " to inactive as well! ");
       //get the return value from the dialog, is it canceled or ok 

       if(result){
          args.set_cancel(false);
       }
       else{
         args.set_cancel(true);
       }
    }
}

Я полагаю, что использование этого подхода должно позволить сценарию ждать, пока пользователь нажмет OK или Отмена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...