$.fn.yiiGridView.update('sopodetail-grid'+itemcd);
这个功能没有运行。
它在控制台中显示Cannot call method 'update' of undefined
。
通过ajax gridview
插入数据时我遇到问题而没有刷新。
我使用foreach循环渲染多个网格视图,并通过连接item_cd
使每个网格视图成为唯一ID。
function validateDetailForm()
{
var jForm = $('#sopodetail-form');
var data = jForm.serialize();
var itemcd = $('#cmbitemcd').val();
$.ajax({
type: 'POST',
url : jForm.attr('action'),
data: data,
dataType:'html',
success:function(data)
{
$(".info").animate({opacity: 1.0}, 3000).fadeOut("slow");
$.fn.yiiGridView.update('sopodetail-grid'+itemcd);
},
error: function(data) { // if error occured
alert('Error occured.please try again');
$('#detail-content').html(data);
},
});
}
这是我如何渲染多个gridview我联合id ...
foreach($modelSoDet as $modelSoDetObj):
$this->widget('zii.widgets.CDetailView', array(
'data'=>$modelSoDetObj,
'attributes'=>array(
'item_cd',
'item.item_name',
'item.item_desc',
'qty',
'qty_purchased'
)
));
$modelSoPoDetail = new Sopodetail();
$modelSoPoDetail->unsetAttributes();
$modelSoPoDetail->so_cd = $modelSoDetObj->so_cd;
$modelSoPoDetail->item_cd = $modelSoDetObj->item_cd;
$gridid = 'sopodetail-grid'.$modelSoPoDetail->item_cd;
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$modelSoPoDetail->search(),
'summaryText' => '',
'id'=>$gridid,
'columns'=>array(
'type',
'po_cd',
'qty'
)
));
endforeach;
答案 0 :(得分:0)
您应该尝试使用正确的语法:
$('sopodetail-grid'+itemcd).yiiGridView('update');
答案 1 :(得分:0)
$.param.querystring
来自yiiGridView.update
,位于jquery.ba-bbq.js
。
检查您的HTML源代码是否包含jquery.ba-bbq.js
...
如果包含jquery.ba-bbq.js
,那么您可能会在jquery.ba-bbq.js
之后重新创建jQuery对象。例如。 jQuery被加载了不止一次......
来源:http://www.yiiframework.com/forum/index.php/topic/9387-cgridview-update/