小编but*_*ing的帖子

Yii renderpartial(proccessoutput = true)避免重复的js请求

我正在创建一个使用ajaxRequest的网站,当我点击一个链接时,它将使用ajaxRequest加载.当我加载例如user/login UserController actionLogin时,我使用processOUtput将视图renderPartial设置为true,因此将生成该视图中所需的js,但是如果我在该视图中有clientScriptRegister,则如何避免生成scriptRegistered两次或多个取决于ajaxRequest?我试图Yii::app()->clientScript->isSCriptRegistered('scriptId')检查脚本是否已经注册,但似乎如果你使用了ajaxRequest,结果总是为false,因为它只在渲染完成后才为真.

控制器代码

if (Yii::app()->request->isAjaxRequest)
{
   $this->renderPartial('view',array('model'=>$model),false,true);
}
Run Code Online (Sandbox Code Playgroud)

查看代码

if (!Yii::app()->clientScript->isScriptregistered("view-script"))
   Yii::app()->clientScript->registerScript("view-script","
      $('.link').live('click',function(){
         alert('test');
     })
");
Run Code Online (Sandbox Code Playgroud)

如果我是第一次请求控制器,它可以正常工作(警报1次)但如果我再次请求同一个控制器而不刷新我的页面并且只使用ajaxRequest,如果你单击它,警报将输出两次(因为它保持在你已经注册一次的情况下生成事件)

这是相同的,如果你有CActiveForm使用jQuery功能的观点.该corescript yiiactiveform将被调用每次你的RenderPartial内.

renderpartial clientscript yii

10
推荐指数
2
解决办法
2万
查看次数

Yii CListview - >分页和AjaxLink/ajaxButton

我有关于分页和Ajax表单的问题.

这是我的代码Controller:

$dataProvider = new CActiveDataProvider('User', array(
        'pagination'=>array(
                'pageSize'=>10,
        ),
));

$this->render('users',array(
  'dataProvider'=>$dataProvider,
));  
Run Code Online (Sandbox Code Playgroud)

对于view - > users:

$this->widget('zii.widgets.CListView', array(
    'dataProvider'=>$dataProvider,
    'itemView'=>'_user',
Run Code Online (Sandbox Code Playgroud)

);

对于渲染_users:

echo CHtml::ajaxLink($text, $this->createUrl('admin/deleteuser',array('id'=>$data->iduser)), array('success'=>"js:function(html){ alert('remove') }"), array('confirm'=>_t('Are you sure you want to delete this user?'), 'class'=>'delete-icon','id'=>'x'.$viewid));
Run Code Online (Sandbox Code Playgroud)

如果我在数据库中有15行,它将只显示10并且将为下一个5生成一个分页(ajaxUpdate = true).前10行对ajaxLink没有问题,因为生成了clientscript但问题是当我移动到在下一页,ajaxLink无法正常工作,因为它不是由分页生成的.

任何的想法?谢谢

yii

5
推荐指数
1
解决办法
8714
查看次数

标签 统计

yii ×2

clientscript ×1

renderpartial ×1