【问题标题】:Yii2 - Stop Field validation if calendar is openYii2 - 如果日历打开,则停止字段验证
【发布时间】:2017-11-16 21:19:07
【问题描述】:

我有一个 Yii2 活动表单,其中包含一个带日期选择器的字段。我的表单使用以下属性:

<?php $form = ActiveForm::begin([
            'id' => 'campaign-form',
            'enableClientValidation' => true,
            'fieldConfig' => [
                'options' => ['class' => 'gg-create-group'],
                'labelOptions' => ['class' => null],
            ],
            'options' => [
                'autocomplete' => 'off',
                'enctype' => 'multipart/form-data',
            ],
        ]);
        ?>

我有一个使用 jquery datepicker 的字段,问题是每次我单击箭头浏览日历中的月份时,都会触发客户端验证并显示错误:

如果日历打开并且我正在使用日历导航,我需要停止错误消息。

我知道我可以使用以下方法关闭客户端验证:

enableClientValidation => false

但我想保留客户验证。我想知道 Yii javascript script: $yiiform 是否可以选择这样做?

【问题讨论】:

  • 如果在表单设置数组中设置'enableClientValidation' =&gt; true, 'validateOnChange' =&gt; false会发生什么?
  • 你找到解决办法了吗?
  • @camelsWriteInCamelCase 是的,我找到了,发布即可。

标签: php jquery jquery-ui yii yii2


【解决方案1】:

我找到了解决方案。我可以使用validationOnBlur,如果我在特定字段上将其设置为false,它可以解决问题。

<?php echo $form->field($model, 'client_end_date', 
['validateOnBlur' => false])->textInput(['readonly' => 'readonly']); ?>

【讨论】:

    猜你喜欢
    • 2019-08-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    • 1970-01-01
    • 2020-08-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多