实现效果如下

  

  1.把layDate封装成Yii2的widget,存在 "\common\widgets"目录下,命名为DycLayDate,具体引用查看代码。

  2.对应的model的rules方法加上:

[['cms_publish_date'], 'date', 'format'=>'yyyy-MM-dd HH:mm:ss' , 'message' => '{attribute}格式不正确', 'on' => ['createDo', 'updateDo'] ]

  其中:date --字段为日期格式;

     format:规定日期格式;

       message:不符合时提示信息;

      on(可省略):设置使用场景;

  具体用法,请查看validate类。

  3.控制器中:

  把原来的代码,

 $model->setScenario('updateDo');  //设置场景
if( !$model->save() ){
$this->throwException( '编辑失败,原因:' . $model->getErrorsDesc() );
}

  改成下面的形式。


 $model->setScenario('updateDo');
if( $model->validate() ){
$model->cms_publish_date = DycUtil::beforeValidateStr2Tim($_POST['DycCmsInfo']['cms_publish_date']);
$model->save(false);
}else{
$this->throwException( '编辑失败,原因:' . $model->getErrorsDesc() );
}

  4.视图中引用:

<?= $form->field($model, 'cms_publish_date')->widget('common\widgets\DycLaydate', ['defaultDate' => $model->cms_publish_date]) ?>

  大功告成。值得注意:date的验证,好像不支持客户端,暂时没弄明白。

  在此感谢贤心,layDate连接

 

Yii2 时间控件之把layDate做成widget的更多相关文章

  1. laydate时间控件:开始时间,结束时间最大最小值

    时间控件地址及插件下载链接:https://www.layui.com/doc/modules/laydate.html 填充时间已两个功能为例: 1.添加功能 :时间 规则:选择开始时间后,点击结束 ...

  2. layui时间控件laydate

    主要解决点击年份立马关闭控件弹窗实现和控件闪退问题 <div class="date-box"> 日期选择 : <input id="xl-2" ...

  3. Jquery.Validate清除验证信息|laydate时间控件无法清除validate提示问题

    最近做一个需求,用到模态框和Jquery.Validate验证框架: 点击添加时弹出模态框,当输入数据保存时如果数据不能通过校验,则会触发Validate验证并显示提示信息: 如果此时关闭弹出层,下次 ...

  4. VB6.0中,DTPicker日期、时间控件不允许为空时,采用文本框与日期、时间控件相互替换赋值(解决方案)

    VB6.0中,日期.时间控件不允许为空时,采用文本框与日期.时间控件相互替换赋值,或许是一个不错的选择. 实现效果如下图: 文本框txtStopTime1 时间框DTStopTime1(DTPicke ...

  5. layui时间控件联动:开始时间、结束时间,有效时间范围

    实际开发中,经常遇到时间控件联动的情况,然后每次都网上搜代码Copy,不过每次都有点小Bug让你错不及防: 这次,在这里备份一下,以后Copy自己的得了(欢迎Copy代码,若遇到问题,请麻烦回复我一下 ...

  6. vue中时间控件绑定多个输入框

    首先去下载laydate时间控件,引入到相应的模板中 <input type="text" val-required="" value="&qu ...

  7. layui时间控件闪退的问题

    项目上线,发现后台管理系统layui的子页面出现时间控件闪退的问题,根本选取不到时间. 其原因是:如果出现页面找到多个节点,只有第一个节点能正常使用后面的节点都会闪退,可以理解为目前laydate不支 ...

  8. [转]一种简单的js时间控件

    使用方法: 粘贴代码到文本文档中,文档名称为datetime.js,然后在html文件中引用如下代码即可 <input name="shijian1" id="sh ...

  9. 疑似easyui本身bug:easyui时间控件问题,试了几个版本都不行

    最近发现easyui时间控件的值格式不支持带斜杠的日期(2016/10/31),必须是2016-10-31这类的才能正常使用,否则默认初始化为当前时间 <input id="Retur ...

随机推荐

  1. Android中利用AIDL机制调用远程服务

    服务端: //CalculateInterface.aidl package com.itheima.aidl.calculate; interface CalculateInterface { do ...

  2. web框架django初探

    Web框架介绍 一般会分为两部分:服务器程序和应用程序.服务器程序负责对socket服务器进行封装,并在请求到来时,对请求的各种数据进行整理.应用程序则负责具体的逻辑处理.为了方便应用程序的开发,就出 ...

  3. 在不损坏C盘的情况下为C盘扩容,适用于Win

    2016年12月29日14:29:27 参考原文:http://jingyan.baidu.com/article/90808022a6c6b7fd91c80fc8.html 在不损坏磁盘的情况下给某 ...

  4. HDU 1796How many integers can you find(容斥原理)

    How many integers can you find Time Limit:5000MS     Memory Limit:32768KB     64bit IO Format:%I64d ...

  5. BZOJ4700: 适者

    先排序,枚举删一个点,在前面找出最优的另一个点,容易推出斜率方程,平衡树维护凸包. #include<bits/stdc++.h> using namespace std; typedef ...

  6. dom 的介绍

    直接上干货 ...网址在此,,,,, <a href="https://developer.mozilla.org/zh-CN/docs/Web/API/Document_Object ...

  7. 20145212&20145204信息安全系统实验四报告

    一.实验内容与步骤 1.本次实验建立在掌握嵌入式开发平台使用方法和配置方法的基础上,要求使用windows xp,linux(red hat),arm三个系统(即NFS方式): 2.在linux系统中 ...

  8. 关于springMVC+Mybatis jar包详解

    1.Aopalliance.jar: 这个包是AOP联盟的API包,里面包含了针对面向切面的接口,通常spring等其它具备动态织入功能的框架依赖此包. 2.aspectjweaver-1.7.1.j ...

  9. iOS多线程-多线程实现之GCD

    什么是GCD? GCD: Grand Central Dispatch (重要的中枢调度器) GCD是纯C语言的, 学习它就是学习一些函数的使用. GCD的核心概念和使用步骤 核心概念 任务 : 执行 ...

  10. 解决qq互联回调地址错误redirect uri is illegal(100010)的方法,不同于网上大部分方法

    我是在用ecshop自己搭建的一个网店系统安装了第三方登录的插件,包括qq登录插件.网上大部分情况都是discuz论坛的这个回调地址出错及解决办法.所以在我出错的时候参考他们的办法并不管用.但是在后面 ...