我在cgridview
的每一行添加了复选框,并在按钮Delete Selected
中删除了所选的行,
现在我要做的是在选中复选框之前,禁用Delete Selected
按钮,我该怎么做。
以下是我的admin
视图的代码:
<?php
$form = $this->beginWidget('CActiveForm', array(
'id' => 'account-form',
'action' => array('site/DeleteMultiple'),
'enableAjaxValidation' => true,
));
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'assign-grid',
'dataProvider'=>$model->search(),
'selectableRows' => 2,
'filter'=>$model,
'columns'=>array(
array(
'id' => 'id',
'class' => 'CCheckBoxColumn',
),
array(
'name'=>'username',
'value'=>'$data->user->username',
),
array(
'name'=>'Firstname',
'value'=>'$data->user->firstname',
),
array(
'class'=>'CButtonColumn',
),
),
)); ?>
<div id="submit-button" style="display:none">
<?php
echo CHtml::SubmitButton('Delete Selected', array('class' => 'button'));
?>
</div>
<?php $this->endWidget();?>
答案 0 :(得分:3)
按以下更改按钮
echo CHtml::SubmitButton('Delete Selected', array('class' => 'button','disabled'=>'true'));
然后添加一个JS函数:
$("#assign-grid input[type=checkbox]").click(function()
{
if($("#assign-grid").find("input:checked").length >0)
$(".button").removeAttr("disabled");
else
$(".button").attr("disabled","true");
});
答案 1 :(得分:2)
试试看, 创建一个jQuery / javascript函数来显示div并在复选框的onclick中调用它
喜欢这个
阵列( 'id'=&gt; 'ID', 'class'=&gt; 'CCheckBoxColumn', 'onclick'=&gt; 'fn_onclick()' ),