【发布时间】:2014-08-20 21:50:56
【问题描述】:
我有一个在 CListView 和 Highcharts 图形中呈现一些数据的视图。
请注意CListView 的寻呼机的工作方式如下:它向服务器请求“新页面”,服务器呈现页面的全部内容并将其发送到CListView。然后将正文替换为正在发送的内容,如下所示:$('body').html(rendered_html_response)。
我也有一个模仿这种行为的dropDownList。这是代码:
<?php
echo CHtml::dropDownList('usage', 'cg', array(
'd'=>'Daily',
'm'=>'Monhly'
), array(
'ajax'=>array(
'type'=>'POST',
'url'=>$this->createUrl('admin/user', array(
'id'=>$user->id)
),
'update'=>'body',
'data'=>array('cg'=>'js:$(this).val()'),
'options'=>array(
Yii::app()->session['cg']=>array(
'selected'=>true
)
)
)
));
?>
总之,有问题。当我使用CListView 时,一切正常(例如:刷新页面内容而不重新加载页面,图表和数据正确呈现等...),但是当我使用@987654328 选择某些内容时@,服务器渲染回复,发送给客户端,客户端开始替换body的内容,但是我得到这个错误:http://www.highcharts.com/errors/16。
我尝试以这种方式禁用highcharts.src.js:
public function beforeAction(){
if(Yii::app()->request->isAjaxRequest){
Yii::app()->clientScript->scriptMap['highcharts.src.js'] = false;
}
return true;
}
然后我得到典型的undefined javascript 错误(意味着 something 正在尝试使用未定义的Highcharts)。
问题出在哪里,我该如何解决?
【问题讨论】:
-
请编辑您的帖子并添加所有相关代码sn-ps,例如(主视图、部分视图和控制器)
标签: javascript php jquery yii highcharts