Диалог подтверждения Jquery - Yii framework - PullRequest
0 голосов
/ 25 января 2012

Я пытаюсь использовать диалоговое окно Jquery вместо стандартного диалогового окна подтверждения скрипта Java для моего проекта

Я гуглил и нашел ниже хорошие диалоги подтверждения Jquery

http://labs.abeautifulsite.net/archived/jquery-alerts/demo/

В настоящее время я использую Yii Framework

У меня есть строки данных с опцией удаления для каждой строки. При нажатии на ссылку удаления запрашивается подтверждение, и на основании введенного пользователем пользователя удаляется строка.

Для этого я использую нижеприведенный код Java-скрипта. Работает отлично и без проблем

"onclick"=>"if (
            !confirm('Are you sure?\\r\\nYou are going to unregister for this subject.')
              ) {     return      }

Но теперь, чтобы использовать вышеупомянутое диалоговое окно Jquery, я не нахожу способ реализовать в точности как выше. Ниже приведен код, который я пробовал

"onclick"=>"if (
            !jConfirm('Can you confirm this?', 'Confirmation Dialog', 
                 function(r) {
                               return r ; 
                              }
                      )
                ){    return     } "

Но это не помогло, и я даже попробовал некоторые другие возможности ... Но ни одна из них не помогла. Может ли кто-нибудь предоставить правильный способ обработки вышеуказанного случая.

Или, если есть другие диалоговые окна, которые помогают мне в моем случае ..

Спасибо

Привет

Киран

Полный код, по которому я звоню,

    echo (
            CHtml::ajaxLink(
                   'Delete',
                    Yii::app()->createUrl("editcourses/removeCourse"),
                    array(
                            "type"=>"POST",
                            "data"=>array(
                                    "place_type"=>$courses[$i]['course_type'],
                                    "place_id"=>$course[$i]['course_code'],
                            ),
                            "success"=>'js:function(data){  }',
                    ),
                    array(
                            "onclick"=>"
                                if (!jConfirm('Can you confirm this?', 'Confirmation Dialog', function(r) {
                                    return r ; })){return} "
                    )
            )
    );

Ответы [ 2 ]

0 голосов
/ 25 января 2012

Я получил ответ, и вот он

    CHtml::ajaxLink(Delete,'','',
array( "onclick"=>"                                         
    var parObj=$(this).parent().parent();
    if (!jConfirm('Are you sure?\\r\\nYou are going to unregister for this course.', 'Confirmation', function(result)                    {                                                if(result){                                               
    jQuery.ajax(
        {'type':'POST',
        'data':{'place_type':parObj.attr('place_type'),'place_id':parObj.attr('place_id')},
        'url':'index.php?r=editProfile/removeCourse',
        'cache':false,
        'success':function(data){ 
            var obj = jQuery.parseJSON(data);
            $('tr[place_id=\"' + obj.place_id + '\"][place_type=\"' + obj.place_type + '\"]').remove();
        }
        }); 
    }
    })){return }

        "
)
)
0 голосов
/ 25 января 2012

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

"onclick"=>"jConfirm('Can you confirm this?', 'Confirmation Dialog', 
                 function(r) {
                       alert('Confirm equaled ' + r + ': Do Something Here');
                       // deleteRecord(5); 
                              }
                      ); return false;"
...