我面临在特定相关单元格值中通过 ajax 在 yii gridview 中显示 loader.gif beforesend 函数的问题。这是我的网格视图。
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'deals-grid',
'dataProvider'=>$model->mersearch(),
'columns'=>array(
'title',
'description',
array('header'=>'Valid Till','name'=>'valid','value'=>$data->valid),
array('name' => 'status',
'value'=>array($this,'getStatus'),
'filter' => $active,'sortable'=>TRUE,
'htmlOptions'=>array('class'=>'status'),
),
array
(
'name'=>'image',
'type'=>'image',
'value'=>array($this,'imagePath'),
'htmlOptions'=>array('class'=>'thumb','rel'=>'gallery'),
),
array(
'class'=>'CButtonColumn',
'buttons'=>array
(
'mail' => array
(
'label'=>'mail',
'imageUrl'=>Yii::app()->request->baseUrl.'/images/mail.png',
'url'=>'Yii::app()->createUrl("deals/sendmail", array("id"=>$data->id))',
'options' => array( 'ajax' => array('url'=>'js:$(this).attr("href")',
'beforeSend'=>'function(){
var obj= $(".mail");
obj.parent().parent().find(".status").replaceWith("<td class=\"status\"><img src=\"/images/loading.gif\"></td>");}',
'success'=>'function(data){$(".status").html("Mail Sent Successfully.")
}',
),
'class'=>'mail',
)),
),
'template'=>'{update}{delete}{mail}',
),
),
)); ?>
主要问题是,当我单击 sendmail 按钮时,它会用 loading.gif 替换所有父状态类单元格,但我只想替换已替换的行状态单元格,但不是全部。