在Yii中不能使用我的ajax验证。为什么呢?
public function actionRegister()
{
$model = new Users;
$model->scenario = 'register';
$this->performAjaxValidation($model);
if(isset($_POST['Users']))
{
$model->attributes=$_POST['Users'];
$model->date = time();
$model->count_login = 0;
$model->count_orders = 0;
$model->total_price = 0;
$model->count_items = 0;
if($model->save())
{
Yii::app()->user->setFlash('success', 'Вы успешно зарегистрировались! Подтвердите свой электронный адрес, вам было выслано письмо!');
}else{
Yii::app()->user->setFlash('error', 'Ошибка регистрации!');
}
}
$this->render('register',array(
'model' => $model,
));
}
<?php
/* @var $this SiteController */
/* @var $model Users */
/* @var $form CActiveForm */
?>
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'users-form',
// Please note: When you enable ajax validation, make sure the corresponding
// controller action is handling ajax validation correctly.
// There is a call to performAjaxValidation() commented in generated controller code.
// See class documentation of CActiveForm for details on this.
'action' => Yii::app()->createUrl('site/register'),
'enableAjaxValidation'=>true,
'enableClientValidation' => true,
'clientOptions' => array(
//'validationUrl' => Yii::app()->createUrl('site/register'),
'validateOnSubmit' => true,
'validateOnChange' => true,
'validateOnType' => true
)
)); ?>
<style>
label{
width: 100%;
}
</style>
<div class="jumbotron">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><strong>Регистрация</strong></h3>
</div>
<div class="panel-body">
<div class="alert alert-info">
<strong>Важно!</strong> Следующие поля обязательны к заполнению. Они помогут нам успешно доставить к вам товар!
<p>
<?php echo $form->errorSummary($model); ?>
</p>
</div>
<fieldset>
<label>
<div class="col-md-3">
<?php echo $form->labelEx($model,'name'); ?>
</div>
<div class="col-md-3">
<?php echo $form->textField($model, 'name', array('size'=>50, 'maxlength'=>50, 'class'=>'form-control')); ?> <?php echo $form->error($model,'name'); ?>
</div>
</label>
</fieldset>
谢谢!
答案 0 :(得分:2)
我被包含在JQuery中两次。需要一次和框架。
<?php Yii::app()->getClientScript()->registerCoreScript('jquery'); ?>