加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ajax – CJuiDatePicker验证消息无效

发布时间:2020-12-15 22:52:32 所属栏目:百科 来源:网络整理
导读:你好. 我在Yii框架中遇到表单验证问题. 这是我的VIEW代码: ?php$form = $this-beginWidget('CActiveForm',array( 'id' = 'search-form','enableAjaxValidation' = true,'enableClientValidation' = true,'focus' = array($model,'ccc'),'clientOptions' = a
你好.

我在Yii框架中遇到表单验证问题.

这是我的VIEW代码:

<?php
$form = $this->beginWidget('CActiveForm',array(
  'id' => 'search-form','enableAjaxValidation' => true,'enableClientValidation' => true,'focus' => array($model,'ccc'),'clientOptions' => array(
    'validateOnSubmit' => true,),));
?>

<?php
echo $form->errorSummary($model);
?>

<div class="row">
  <?php echo $form->labelEx($model,'input'); ?>
  <?php echo $form->textField($model,'input',array('class' => 'input-medium','maxlength' => 11,)); ?>
  <?php echo $form->error($model,'input'); ?>
</div>

<div class="row">
  <?php echo $form->labelEx($model,'date'); ?>
  <?php
  $this->widget('zii.widgets.jui.CJuiDatePicker',array(
    'attribute' => 'date','name' => 'date','model' => $model,'language' => 'ru','options' => array(
      'dateFormat' => 'dd/mm/y','showAnim' => 'slideDown','changeMonth' => true,'changeYear' => true,'showOn' => 'button','constrainInput' => 'true','htmlOptions' => array(
      'style' => 'height:15px; width:6em'
    ),));
  ?>
  <?php echo $form->error($model,'date'); ?>
</div>
<?php $this->endWidget(); ?>

没什么特别的.但验证消息仅适用于textField(Ajax请求仅使用onChange textField发送).

如何启用CJuiDatePicker验证消息?

解决方法

你只需要给你的CJuidatepicker对象提供正确的id,使用CHtml :: getIdByName创建id值,尝试在那里的html元素的名称,它必须是类似的东西
'id' => CHtml::getIdByName(get_class($model) . '[' . $attribute . ']')

它会变成这样:

$this->widget('zii.widgets.jui.CJuiDatePicker',array(
    'id' => CHtml::getIdByName(get_class($model) . '[date]'),'attribute' => 'date','options' => array(
       'dateFormat' => 'dd/mm/y',));

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读