在我的项目中,我将 cgridview 数据填充到基本窗口中的弹出窗口中。但是当我尝试进行 ajax 分页时,它会失败。我制作了一个名为 list invoices 的视图,仅包含 cgrid 数据。
查看/用户/listInvoices.php
<div id="invoice_container" name="invoice_container">
<div align="right"><img src="<?php echo Yii::app()->request->baseUrl; ?>/media/images/add_button.png" name="add_invoice" id="add_invoice"></div>
<?php
echo "INVOICES LISTING";
// <a href="<?php #echo Yii::app()->createAbsoluteUrl('/studio/addInvoices') ">Add Invoice</a>
//echo $schedules;
?>
<?php
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider' => $invoice->search($studioId),
'columns' => array(
array(
'name' => 'Invoice Number',
'type' => 'raw',
'value' => '$data->invoice_no',
),
array(
'name' => 'Student',
'type' => 'raw',
'value' => '$data->user_id',
),
array(
'name' => 'Invoice Date',
'type' => 'raw',
'value' => '$data->invoice_date',
),
array(
'name' => 'Invoice Amount',
'type' => 'raw',
'value' => '$data->invoice_amount',
),
array(
'name' => 'Status',
'type' => 'raw',
'value' => '$data->invoice_status',
),
),
));
?>
</div>
在我的控制器中
在 baseview.php 上,我向用户控制器发送请求以加载发票。使用数据的 ajax 返回成功将网格填充到发票控制器网格上。
查看/用户/baseview.php
$.ajax({
url:loadinvoice,
success: function(data) { $('#invoice_controller).html(data);}
});
用户控制器.php
public function actionLoadinvoice() {
$this->renderPartial('listinvoices');
}
但在我的 div 中,网格被 ajax 分页填充不工作。当我单击下一页时,浏览器会重新加载。这背后的问题是什么。我想我需要在 .bind() 或 .live() 中绑定 ajax 分页属性。但我该怎么做。