1

“文本日期”字段的日期验证不起作用。

http://sky-walker.net/temp/test/yii/testdate/index.php?r=site/login

如果我根据需要进行设置,“必需”验证将起作用。

我希望文本字段在提交表单时以及使用 ajax 失去焦点时变为红色或绿色。如果它变成红色,还应该出现一条错误消息。

来自 login.php

<div class="row">
    <?php echo $form->labelEx($model,'textDate'); ?>
    <?php echo $form->textField($model,'textDate'); ?>
    <?php echo $form->error($model,'textDate'); ?>
</div>

来自 LoginForm.php

public $textDate;

从规则()

...array('textDate', 'date', 'format'=>'d/M/yyyy'),...
4

1 回答 1

3

在您的表单上,您没有 ajax 验证。您拥有的验证是 javascript 验证。如果您使用 Firebug 看一下,那么您将看到与服务器没有任何通信 => 您只有 js 验证,您没有验证模型。

您必须设置一些变量才能使其通过 ajax 运行

'enableAjaxValidation' => true,
'clientOptions' => array(
        'validateOnSubmit' => true,
        'validateOnChange' => true,
),
于 2013-01-18T01:34:16.517 回答