Jquery确认对话 - Yii框架

时间:2012-01-24 20:01:42

标签: jquery dialog yii

我正在尝试使用Jquery对话框代替我的项目的Java脚本标准确认对话框

我用Google搜索并在下面找到了很好的Jquery确认对话

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

我目前正在使用Yii框架

我有每行的删除选项的数据行。单击删除链接会询问确认,并根据用户输入删除该行。

为此,我使用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 :(得分:0)

您将无法与默认确认对话框完全相同地实现它,因为在用户单击之前不会发生返回,此时整个函数的返回已经发生。

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

答案 1 :(得分:0)

我得到了答案,而这里是

    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 }

        "
)
)