Код: Выделить всё
$checkOrderForm = $this->beginWidget('CActiveForm', array(
'id' => 'check-order-form',
'stateful' => true,
'enableClientValidation' => TRUE,
));
Код: Выделить всё
$checkOrderForm = $this->beginWidget('CActiveForm', array(
'id' => 'check-order-form',
'stateful' => true,
'enableClientValidation' => TRUE,
));
Видимо в этом и причина. А как это подключается? ClientScript? Я думал скрипт подключается после создания формы. Можно пример или ткнуть меня носом на документацию? Искал не смог найти.Faster писал(а):там может быть много чего. например в лейауте не подключается JS от yii
А в форме ещё что-нибудь есть? Где-нибудь ниже по коду (до endWidget) используется $checkOrderForm? Если да, то проверить - есть ли правила у модели, для которой должны "появляться" правила валидации.Но ничего не работает и JS-код валидации на странице нигде не появляется. Как вообще он должен появляться и в каком именно месте?
Да, есть. Вот код формы:esche писал(а):А в форме ещё что-нибудь есть? Где-нибудь ниже по коду (до endWidget) используется $checkOrderForm? Если да, то проверить - есть ли правила у модели, для которой должны "появляться" правила валидации.
Код: Выделить всё
<?php
$checkOrderForm = $this->beginWidget('CActiveForm', array(
'id' => 'check-order-form',
'stateful' => true,
'enableClientValidation'=>true,
));
?>
<div class="input-group">
<span class="input-group-addon">№</span>
<?=
$checkOrderForm->textField($checkOrderModel, 'id', array(
'class' => 'form-control',
'placeholder' => '43245',
))
?>
<span class="input-group-btn">
<?=
CHtml::htmlButton('Проверить', array(
'class' => 'btn btn-red text-bold',
'name' => 'scenario',
'value' => $checkOrderModel->getScenario(),
'type' => 'submit',
));
?>
</span>
</div>
<?php $this->endWidget(); ?>
Код: Выделить всё
public function rules() {
return array(
// типы полей
array('id, order_start_time, order_finish_time, order_status_id, boiler_id, price_boiler, price_delivery', 'numerical', 'integerOnly' => true),
array('name, email, address_delivery', 'length', 'max' => 255),
array('name', 'length', 'min' => 2),
array('phone', 'length', 'max' => 25),
array('phone', 'length', 'min' => 5),
array('email', 'email'),
// сценарий оставления заявки
array('name, phone, email, boiler_id', 'required', 'on' => 'add'),
// сценарий подтверждения заявки (через админку)
array('name, phone, email, address_delivery, order_status_id, boiler_id, price_boiler, price_delivery', 'required', 'on' => 'confirm'),
// сценарий проверки статуса заявки
array('id', 'required', 'on' => 'check'),
);
}
Код: Выделить всё
<?php echo $checkOrderForm->error($checkOrderModel,'id'); ?>