yii框架中的即点即改

控制器层

 /**
     * 即点即改
     *
     */
    public function actionJidian(){
        //先从数据库中把值循环出来
        $j=new Jidian();
        $res=$j->find()->asArray()->all();
        // print_r($res);
        return $this->render('jidian',['res'=>$res]);


    }

    /**
     * 即点即改中即改
     * @return [type] [description]
     */
    public function actionJigai(){
        $uname=yii::$app->request->get('uname');
        $id=yii::$app->request->get('id');
        $j=new Jidian();
        $result=$j->find()->where(['id'=>$id])->one();
        $result->uname=$uname;
        $re=$result->save();
        if($re){
            echo 1;
        }else{
            echo 0;
        }
    }


view层

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>即点即改</title>
    <script src="./jquery/jquery.1.12.js"></script>
</head>
<body>
    <table class="table">
        <tr>
            <td>编号</td>
            <td>名字</td>
            <td>性质</td>
        </tr>
    <?php foreach ($res as $key => $val): ?>
        <tr class="allTr">
            <td><?= $val['id']?></td>
            <td tid="<?= $val['id']?>">
                <span id="s<?= $val['id']?>"><?= $val['uname']?></span>
                <input type="text" value="<?= $val['uname']?>" id="i<?= $val['id']?>" style="display:none">
            </td>
            <td><?= $val['hobby']?></td>
        </tr>
    <?php endforeach ?>

    </table>
</body>
</html>

<script>

var id=id;//这样可以把第一个函数中的值提成全局的,然后第二个函数就可以用了

    $(function(){
        //点击 tr  span 隐藏    input 显示
        $('.allTr').children().click(function(){
            var id=$(this).attr('tid');
            $('#s'+id).hide('slow');
            $('#i'+id).show('slow');
        });

        //失去焦点 span 显示   input 隐藏  并修改数据库中的数据
        $(':input').blur(function(){
            var _this=$(this);
            var uname=_this.val();
            var id=$(this).parent().attr('tid');
            var url="?r=chen/jigai";
            $.get(url,{'uname':uname,'id':id},function(msg){
                if(msg){
                    _this.hide('slow');
                    _this.prev().show('slow');
                    _this.prev().html(uname);
                }else{
                    _this.hide('slow');
                    _this.prev().show('slow');
                }
            });
        })
    })
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值