2016-05-06 11:50:45 2588次浏览 1条回答 0 悬赏 10 金钱

在 GridView的每行增加操作按钮,自己写了JS,页面打开的时候JS工作正常,
然后在搜索栏输入数据得到搜索结果后,我的JS就不工作了,嘛个原因
代码大概如下:

 Pjax::begin();
    echo GridView::widget([
.......
]);
 Pjax::end();
<?php $this->beginBlock('myjs') ?>
.........
<?php $this->endBlock() ?>
<?php $this->registerJs($this->blocks['myjs'], \yii\web\View::POS_READY); ?>

最佳答案

  • rambo 发布于 2016-05-06 11:54 举报

    打开firebug调试啊 你放一段php代码 却让大家找js错误 这思路就不对

    1 条回复
    回复于 2016-05-07 21:35 回复

    亲,之前已经确认JS没问题,我想是YII2的JS机制问题,所有不贴JS了。
    最后答案是:遇到yii2的Pjax时候,JS要写成委托事件。示例:

       jQuery(document).on('click','.checkpass',function(){//审核通过
    	x=$(this).attr("data-id");
        $.ajax({
                url: '<?= \yii\helpers\Url::to(["/jiaoyanaward/check"]) ?>',
                type: 'GET',
                dataType:'text',
                data:{id:$(this).attr("data-id"),status:'审核通过'},
                success: function (data) {
                   $("button[data-id="+x+"]").html(data);
                }
            });
    		});
    
    觉得很赞
    没有找到数据。
您需要登录后才可以回答。登录 | 立即注册
搞搞的传奇
见习主管

搞搞的传奇

注册时间:2015-02-24
最后登录:2020-06-04
在线时长:24小时46分
  • 粉丝8
  • 金钱5
  • 威望10
  • 积分345

热门问题