YII CJuiDialog 中运行ajax CGridView

1,CJuiDialog按钮

	$('#choose-clientele').click(function(){
		var client_url=baseUrl+'/index.php?r=basedata/clienteles';
		$('#clientele_dialog').dialog("open");
		$.ajax({url:client_url,async:false,success:function(data){
			$('#clientele_dialog').html(data);
			
			}});
	});

2,请求的控制器

	public function actionClienteles()
	{
		$model = new ClienteleSurvey('search');
		$this->layout = 'ajax';
		$this->render('clientele',array('model'=>$model));
	}

3,视图,

<?php 
Yii::app()->clientScript->scriptMap = array('jquery.js'=>false, 'jquery.min.js'=>false);
$columns = array("id","company");
		$factory = new CWidgetFactory();    
		$widget = $factory->createWidget($this, 'zii.widgets.grid.CGridView', array(
			'id'=>'clientele-survey-grid',
			'dataProvider'=>$model->search(),
			'columns'=>$columns,
			'ajaxUpdate'=>true,
		));
		$widget->init();
		$widget->run();
?>


4,去头去尾的layout,  $this->layout = 'ajax';

对应文件:  view/layout/ajax.php

<?php echo $content; ?>


注意的是:YII dialog中重复加载jquery.js会导致出现错误:Object [object Object] has no method 'dialog'

解决办法是:

Yii::app()->clientScript->scriptMap = array('jquery.js'=>false, 'jquery.min.js'=>false);




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值