我们希望删除在Yii 2.0上使用activeform在客户端验证中显示的验证消息.
尝试:
$form = ActiveForm::begin(['clientOptions'=>['hideErrorMessage'=>false]]);
Run Code Online (Sandbox Code Playgroud)
获得:
无效的调用 - yii\base\InvalidCallException
设置只读属性:yii\widgets\ActiveForm :: clientOptions
在docs上,我能找到的最好的是:http: //www.yiiframework.com/doc-2.0/yii-widgets-activeform.html#getClientOptions()-detail
我不知道" 选项 "是什么,所以我猜到了由于Yii 1经验而导致的" hideErrorMessage ".
请问建议,我们如何以编程方式禁用生成的错误消息,无需创建新模板以显示表单,也不执行display:none; 用css.
完整的activeform要求您考虑:
$form = ActiveForm::begin(
['id' => $model->formName(),
'enableClientValidation'=> true,
'validateOnBlur'=>false,
'validateOnType'=>true,
'validationDelay'=> 1500,
'clientOptions'=>['hideErrorMessage'=>false]
]);
Run Code Online (Sandbox Code Playgroud)
clientOptions是一个尝试/猜测.
然后,表单字段,一个例子:
<?= $form->field($model, 'first_name')->textInput()->label(false) ?>
Run Code Online (Sandbox Code Playgroud)
试试这个.
$form = ActiveForm::begin(['fieldConfig' => ['template' => '{label}{input}']]);
Run Code Online (Sandbox Code Playgroud)