evoself 2012-12-11 11:24:52 4340次浏览 6条回复 0 0 0

求解读该方法里的处理流程,特别是js的作用,谢谢 controllers

public function actionDelete()
    {
    if(Yii::app()->request->isPostRequest)
    {
        if(User::model()->deleteByPk($_POST['id']))
        {
            echo true;
        }
        else
        {
            echo false;
        }
    }	
    }

views

<?php echo CHtml::link('删除',array('site/delete/'),$htmlOptions=array ('class'=>'delete','val'=>$data->id));?>

js

jQuery('#yw0 a.delete').live('click',function() {
    if(!confirm('确定要删除这条数据吗?')) 
        return false;
    $.post(	$(this).attr('href'),
    {'id':$(this).attr('val')}, 
    function (data) {
        if (data) {
            $.fn.yiiListView.update('yw0');
        }
    });

    return false;
});
  • 回复于 2012-12-11 19:11 举报

    这是在你点击删除按钮的时候,弹出对话框,提示你是否要删除?当你选择确定的时候,就发送一条Ajax删除请求,如果删除成功就返回true。

  • 回复于 2012-12-11 20:44 举报

    大概的我知道,就是这个js不知道是怎么写的

  • 回复于 2012-12-12 00:20 举报

    js用的JQuery

  • 回复于 2012-12-12 10:00 举报
    jQuery('#yw0 a.delete').live('click',function() {//当点击id=yw0下的class= delete的a标签时执行下面代码
    if(!confirm('确定要删除这条数据吗?')) return false;//js中的确认消息框
    

    使用确认消息框可向用户问一个“是-或-否”问题,并且用户可以选择单击“确定”按钮或者单击“取消”按钮。confirm 方法的返回值为 true 或 false。该消息框也是模式对话框:用户必须在响应该对话框(单击一个按钮)将其关闭后,才能进行下一步操作。

    $.post($(this).attr('href'),//jquery中ajax的post传值
    {'id':$(this).attr('val')}, 
    function (data) {
        if (data) {
            $.fn.yiiListView.update('yw0');
    }
    });
    return false;
    });
    
  • 回复于 2012-12-13 15:01 举报

    求教这个怎么写呢..

  • 回复于 2012-12-14 15:55 举报

    运行以后,可以删除数据,但是必须重新刷新页面,而且删除后也无法重新加载,求指教

    $(document).ready(function(){
        $("#list a.delete").live("click",function() {
            if(!confirm('确定要删除这条数据吗?')) return false;
            $.post(	$(this).attr("href"),
            {'id':$(this).attr("val")}, 
                function (data) {
                    if (data) {
                        $.fn.yiiListView.update('list');
                    }
                });
            return false;
        });
    });
    

    controllers

    $pk=$_POST['id'];
    if(Yii::app()->request->isPostRequest)
    {
        if(Book::model()->deleteByPk($pk))
        {
            echo true;
        }  
        else 
        {
            echo false;
        }
    }
    
您需要登录后才可以回复。登录 | 立即注册