ActiveForm 验证
你可以以活动形式启用/禁用 ajax 和客户端验证。
$form = ActiveForm::begin([
'id' => 'signup-form',
'enableClientValidation' => true,
'enableAjaxValidation' => true,
'validationUrl' => Url::to('signup'),
]);
- 默认情况下,在 ActiveForm 中启用
enableClientValidation
。如果你不需要表单中的客户端验证,我们可以通过赋值为 false 来禁用。 - 默认情况下,在 ActiveForm 中禁用
enableAjaxValidation
。如果你想启用它,我们必须像上面那样在 ActiveForm 中手动添加。 validationUrl
- 如果你希望将所有验证编码保留在此表单的单独控制器操作中,我们可以使用validationUrl
配置 activeform。如果我们没有设置它,它将采用表单的动作值。
以上两个论点将影响整个形式。如果要仅检查表单中特定字段的 ajax 验证,可以为该特定字段添加 enableAjaxValidation
。它只适用于那个不是整个形式的领域。
例如,在注册表单中,你希望在用户输入表单时检查用户名已存在的验证。你可以在这个领域使用这个 enableAjaxValidation
参数。
echo $form->field($model, 'username', ['enableAjaxValidation' => true]);