Yii子网格未加载最近在IE9中添加的数据
当我添加一些数据并提交页面时,我对Yii子网格有一个问题。页面重新加载之后,当我检查子网格时,它没有列出我在那里实际添加的数据,我只有IE 9有这个问题。在所有其他浏览器(如Chrome)中,Firefox都能完美运行 我不知道为什么会发生这种情况,所以我清除了缓存并进行了检查,但仍然存在该问题。我注意到这个问题是因为IE没有调用ajax来加载整个站点刷新后的子网格。任何人都可以帮我解决这个问题 代码如下: index.phpYii子网格未加载最近在IE9中添加的数据,yii,subgrid,Yii,Subgrid,当我添加一些数据并提交页面时,我对Yii子网格有一个问题。页面重新加载之后,当我检查子网格时,它没有列出我在那里实际添加的数据,我只有IE 9有这个问题。在所有其他浏览器(如Chrome)中,Firefox都能完美运行 我不知道为什么会发生这种情况,所以我清除了缓存并进行了检查,但仍然存在该问题。我注意到这个问题是因为IE没有调用ajax来加载整个站点刷新后的子网格。任何人都可以帮我解决这个问题 代码如下: index.php <div class="span9 search-resul
<div class="span9 search-results">
<?php
/* @var $this CVController */
$this->breadcrumbs = array(
'C V',
);
$flashMessages = Yii::app()->user->getFlashes();
$gridDataProvider = new CArrayDataProvider($cvs, array(
'keyField' => 'id',
'sort' => array('attributes' => array('name'),), 'pagination' => array('pageSize' => 20)
));
$user = Yii::app()->user;
if ($user->accessFeature()) {
$this->widget('bootstrap.widgets.TbButton', array(
'label' => Yii::t('main', 'ADD_CV'),
'type' => 'secondary',
'size' => 'small',
'url' => Yii::app()->controller->createUrl("cV/addHeader")
));
?> <?php
$this->widget('bootstrap.widgets.TbButton', array(
'label' => Yii::t('main', 'CV_LIST'),
'type' => 'secondary',
'size' => 'small',
'url' => Yii::app()->controller->createUrl("list/index")
));
?> <?php
$this->widget('bootstrap.widgets.TbButton', array(
'label' => Yii::t('main', 'ARCHIVED_CV_LIST'),
'type' => 'secondary',
'size' => 'small',
'url' => Yii::app()->controller->createUrl("list/showArchiveCv")
));
}
$gridColumns = array(
array(
'name' => 'name',
'class' => 'bootstrap.widgets.TbRelationalColumn',
'url' => $this->createUrl('interviewProcess/getScheduledInterviews'),
'header' => Yii::t('main', 'CANDIDATE_NAME'),
),
array(
'name' => 'clname',
'header' => Yii::t('main', 'COUNTRY'),
'value' => '$data["city"] != "" ? $data["clname"].", ".$data["city"] : $data["clname"]',
),
array(
'name' => 'header_availability',
'header' => Yii::t('main', 'AVAILABILITY'),
),
array(
'name' => 'header_cv_verified',
'header' => Yii::t('main', 'VERIFIED_LABEL'),
'value' => '$data["header_cv_verified"] == 1 ? "' . Yii::t('main', 'VERIFIED_LABEL') . '" : "' . Yii::t('main', 'NOT_VERIFIED_LABEL') . '"',
'type' => 'raw',
'cssClassExpression' => '$data["header_cv_verified"] == 1 ? "verified" : "notverified"',
),
array(
'htmlOptions' => array('nowrap' => 'nowrap'),
'template' => '{view} {download}{file_download}',
'class' => 'bootstrap.widgets.TbButtonColumn',
'viewButtonUrl' => "Yii::app()->controller->createUrl('preview/cv',array('id'=> " . '$data' . "['id']))",
'buttons' => array(
'download' => array(
'label' => Yii::t('main', 'BRIDGE_CV_DOWNLOAD'),
'url' => "Yii::app()->controller->createUrl('preview/createPdf',array('id'=> " . '$data' . "['id']))",
'icon' => 'icon-download'
),
'file_download' => array(
'label' => Yii::t('main', 'CV_DOWNLOAD'),
'url' => "Yii::app()->controller->createUrl('downloadCv',array('id'=> " . '$data' . "['id']))",
'icon' => 'icon-download-alt'
),
),
),
array(
'htmlOptions' => array('data-toggle' => 'modal', 'data-target' => '#setInterviewForm'),
'template' => '{set_interview}',
'class' => 'bootstrap.widgets.TbButtonColumn',
'buttons' => array(
'set_interview' => array(
'label' => Yii::t('main', 'SET_INTERVIEW'),
'icon' => 'th-list',
'class' => "btn btn-small",
'data-target' => "#setInterviewForm",
'url' => "Yii::app()->controller->createUrl('interviewProcess/index',array('id'=> " . '$data' . "['id']))",
'data-toggle' => "modal",
),
),
),
array(
'htmlOptions' => array('data-toggle' => 'modal', 'data-target' => '#addCandidateDescription'),
'template' => '{verify}',
'class' => 'bootstrap.widgets.TbButtonColumn',
'buttons' => array(
'verify' => array(
'label' => Yii::t('main', 'VERIFY_THIS_CANDIDATE'),
'visible' => 'CandidateInterviewSkillRate::model()->checkIfVerifyable($data)',
'url' => "Yii::app()->controller->createUrl('interviewProcess/index',array('id'=> " . '$data' . "['id']))",
'data-target' => "#addCandidateDescription",
'data-toggle' => "modal",
'class' => "btn btn-small",
'icon' => 'ok',
),
)
)
);
//Yii booster to show the CV list
?>
<div id="result_div">
<?php
$this->widget('bootstrap.widgets.TbGridView', array(
'type' => 'striped bordered',
'dataProvider' => $gridDataProvider,
'template' => "{items}",
'responsiveTable' => true,
'columns' => $gridColumns,
));
?>
</div>
</div>
这可能会帮助您,谢谢,但问题是我有多个子网格,在添加新数据后正在加载all页面。我只对IE有问题。我认为子网格json数据是缓存的,一旦子网格被更改/更新,你必须更改子网格url,例如添加一个随机数。是的,我也认为数据是缓存的,因为在IE中刷新页面后没有ajax调用。在其他浏览器中,刷新页面后有ajax调用。我对每个网格都有一个随机数字id,如访谈-list-255、访谈-list-899等,所以我也尝试了你建议的方法,但没有解决问题。我还注意到,当我清除缓存时,cookie,会话等它不会从IE中的应用程序中注销我,但会在所有其他浏览器中注销。你能分享一下子网格是如何创建的吗?
<?php
$gridColumns = array(
array(
'name' => 'interview_type',
'header' => Yii::t('main', 'INTERVIEW_TYPE'),
'value' => array($this, 'getInterviewType'),
),
array(
'name' => 'interviewers',
'header' => Yii::t('main', 'INTERVIEWERS'),
'value' =>array($this, 'getInterviewers'),
),
array(
'name' => 'interview_date',
'header' => Yii::t('main', 'INTERVIEW_DATE_TIME'),
'value' =>array($this, 'getInterviewDate'),
),
array(
'htmlOptions' => array('nowrap' => 'nowrap'),
'template' => '{delete}{success}{view_rating}',
'class' => 'bootstrap.widgets.TbButtonColumn',
//'deleteButtonUrl' => "Yii::app()->controller->createUrl('interviewProcess/delete',array('id'=> " . '$data' . "['id']))",
'buttons' => array(
'delete' => array(
'label'=>Yii::t('main', 'DELETE_INTERVIEW'),
'visible' => 'InterviewProcessController::checkInterviewStatus($data,1)',
'icon' => 'icon-trash',
'url' => "Yii::app()->controller->createUrl('interviewProcess/delete',array('id'=> " . '$data' . "['id']))",
),
'success' => array(
'label'=>Yii::t('main', 'INTERVIEW_COMPLETED'),
'visible' => 'InterviewProcessController::checkInterviewStatus($data,2)',
'icon' => 'icon-ok',
'url' => "Yii::app()->controller->createUrl('interviewProcess/completed',array('id'=> " . '$data' . "['id']))",
),
'view_rating' => array(
'label'=>Yii::t('main', 'VIEW_RATING'),
'visible' => 'InterviewProcessController::checkInterviewStatus($data,3)',
'icon' => 'icon-star',
'url' => "Yii::app()->controller->createUrl('interviewProcess/viewrating',array('id'=> " . '$data' . "['interview_schedules_id']))",
),
),
),
);
?>
<?php
$this->widget('bootstrap.widgets.TbGridView', array(
'id' => 'interview-list-' . $_GET['id'],
'type' => 'striped bordered',
'enableSorting' => false,
'dataProvider' => $interviews,
'template' => "{items}{pager}",
'responsiveTable' => true,
'columns' => $gridColumns,
));
?>