Yii. Дублируется ajax запрос. Почему?

Рейтинг: 0Ответов: 1Опубликовано: 30.12.2014

Привет!

Суть: есть форма, на ней textArea. Вбив туда текст и нажав на произвольное место (генерируется ивент onChange), форма отправляется. Нажав на кнопку, форма отправляется еще раз.
Необходимо, чтобы форма отправлялась только при нажатии кнопки, т.е. не происходило дублирования ajax запроса.
Что изменить?

$form=$this->beginWidget('CActiveForm', array(
    'enableClientValidation'=>true,
    'clientOptions'=>array(
        'validateOnSubmit'=>true,
    ),
    'enableAjaxValidation'=>true,
));
?>
<?php echo $form->errorSummary($model); ?>
<div class="well">
    <?php if($scenario=='anonim'){ ?>
    <div>
        <?php echo $form->labelEx($model,'name'); ?>
        <?php echo $form->textField($model,'name'); ?>
        <?php echo $form->error($model,'name'); ?>
    </div>
    <?php } ?>

    <div>
        <?php echo $form->labelEx($model,'value'); ?>
        <?php echo $form->textArea($model,'value'); ?>
        <?php echo $form->error($model,'value'); ?>
    </div>

    <?php if(CCaptcha::checkRequirements() && Yii::app()->user->isGuest):?>
        <?php echo $form->labelEx($model, 'verifyCode')?>
        <?php $this->widget('CCaptcha'); ?>
        <br/>
        <?php echo $form->textField($model, 'verifyCode')?>
    <?endif?>

</div>
<div >
    <?php 
    echo CHtml::ajaxSubmitButton('Сохранить','',array(
        'type'=>'POST',
        'beforeSend'=>'function(){$("#indicator").show();}',
        'success'=>'function(){$("#indicator").hide();}',
    ),array( 'type' => 'submit','class'=>'btn btn-primary')); ?>
</div>
<?php $this->endWidget(); ?>

Ответы

▲ 1

Заменить

 'enableAjaxValidation'=>true,

на

'enableAjaxValidation'=>false`,