正在加载周涛博客
自留地
切勿乱来!
        找回密码

PHPCMS V9 时间选择器改成laydate时间组件

什么是时间选择器

涉及到时间的修改和编辑的地方,都会用form::date来调用时间选择器,样式如下

这玩意因为年久失修不更新,造成很多兼容性问题(如果你没发现兼容性问题可不升级哦),所以升级成laydate时间组件

升级方法

https://www.layui.com/laydate/

下载,解压,目录里的laydate目录上传到/statics/js/目录

然后修改/phpcms/libs/classes/form.class.php里的public static function date 函数如下:

	public static function date($name, $value = '', $isdatetime = 0, $loadjs = 0,$timesystem = 1) {
		if($value == '0000-00-00 00:00:00') $value = '';
		$id = preg_match("/\[(.*)\]/", $name, $m) ? $m[1] : $name;
		if($isdatetime) {
			$size = 21;
			$format = 'yyyy-MM-dd HH:mm:ss';
			$showsTime = 'datetime';
		} else {
			$size = 10;
			$format = 'yyyy-MM-dd';
			$showsTime = 'date';
		}
		if($isdatetime=='1') {
			$size = 21;
			$format = 'yyyy-MM-dd HH:mm:ss';
			$showsTime = 'datetime';
		} else {
			$size = 10;
			$format = 'yyyy-MM-dd';
			$showsTime = 'date';
		}
		$str = '';
		if(!defined('LAYDATE')) {
			define('LAYDATE', 1);
			$str .= '<script type="text/javascript" src="'.JS_PATH.'laydate/laydate.js"></script>';
		}
		if(defined( 'IN_ADMIN' )) {
			$lang = SYS_STYLE ? SYS_STYLE : 'zh-cn';
		} else {
			$lang = pc_base::load_config( 'system','lang' );
		}
		$str .= '<input type="text" name="'.$name.'" id="'.$id.'" value="'.$value.'" size="'.$size.'" class="input-text" readonly>';
		$str .= '<script type="text/javascript">
			laydate.render({
			  elem: "#'.$id.'"
			  ,zIndex: 99999999
			  ,btns: ["clear", "now", "confirm"]
			  ,lang: "cn"
			  ,trigger: "click"
			  ,type: "'.$showsTime.'"
			  ,format: "'.$format.'"
			});
        </script>';
		return $str;
	}
赞(4) 打赏
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《PHPCMS V9 时间选择器改成laydate时间组件》
文章链接:https://www.ediok.cn/blog/2020/05/4685.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。

评论 抢沙发

评论前必须登录!

 

关注互联网发展前沿,关注PHPCMS技术演进,钻研PHPCMS技术开发

模块开发联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏