ここで私のシナリオは、チェックボックスがオフの場合、対応するフィールドが無効になり、無効なフィールドの場合、クライアントの検証はここで実行されるべきではありません。父の姓、名のように...これらのフィールドでは、クライアントの検証を実行しないでください。そのチェックボックスをもう一度オンにすると、クライアントの検証が実行されます
ここで私の問題は、チェックボックスのチェックを外し、クライアント側の検証が行われており、フォームが送信されていないことです。このシナリオで誰かが私を助けることができます. ここに私のサンプルコードがあります
<?php echo $form->checkBox($modelFamilyFather, '[1]type', array('id'=>'type', 'checked'=>'checked','onChange' => "
if(this.value==checked)
{
$('#" . CHtml::activeId($modelFamilyFather, '[1]firstname') .
"').removeAttr('disabled','disabled');
$('#" . CHtml::activeId($modelFamilyFather,
'[1]lastName') . "').removeAttr('disabled','disabled');
$('#" . CHtml::activeId($modelFamilyFather, '[1]occupation') .
"').removeAttr('disabled','disabled');
$('#" . CHtml::activeId($modelFamilyFather, '[1]averageMonthlyIncome') .
"').removeAttr('disabled','disabled');
}
else {
$('#" . CHtml::activeId($modelFamilyFather, '[1]firstname') .
"').attr('disabled','disabled');
$('#" . CHtml::activeId($modelFamilyFather,
'[1]lastName') . "').attr('disabled','disabled');
$('#" . CHtml::activeId($modelFamilyFather, '[1]occupation') .
"').attr('disabled','disabled');
$('#" . CHtml::activeId($modelFamilyFather, '[1]averageMonthlyIncome') .
"').attr('disabled','disabled');
}
"))." <label for='Father'>Has a Father</label>";
?>