phpcms v9中formvalidator无法验证时间插件返回的数据解决办法
2013-06-28 19:44
489 查看
在phpcms中,会引用formvalidator来验证表单,会用 Dynarch Calendar来做时间插件,但是当这两种结合起来的时候,就会出现一个问题
问题是这样的,当选择input时间框的时候,弹出日期选择层,选择完之后, Dynarch Calendar会把时间数值直接赋值给被点击的input框,但是这个input框不会获得焦点,所以在不获得焦点的时候formvalidator就无法验证时间数据,就会造成,明明已经选择了时间,但是formvalidator还是提示,时间未添加。
在找解决办法的时候,发现Dynarch Calendar官网介绍说,这个插件有一个函数叫onchange,于是我就从这个函数下手,在onchange的时候,给input框一个focus(),在添加完之后,又发现一个问题,这样写的话,在chrome中没问题,但是在ie8中会报错,因为我一个页面当中有多个日期选择,有一些是display:none的状态,这样的话,ie8中会报错。所以我就又修改了下代码
代码如下,代码所在文件在phpcms/libs/classes/form.class.php 208行附近添加
问题是这样的,当选择input时间框的时候,弹出日期选择层,选择完之后, Dynarch Calendar会把时间数值直接赋值给被点击的input框,但是这个input框不会获得焦点,所以在不获得焦点的时候formvalidator就无法验证时间数据,就会造成,明明已经选择了时间,但是formvalidator还是提示,时间未添加。
在找解决办法的时候,发现Dynarch Calendar官网介绍说,这个插件有一个函数叫onchange,于是我就从这个函数下手,在onchange的时候,给input框一个focus(),在添加完之后,又发现一个问题,这样写的话,在chrome中没问题,但是在ie8中会报错,因为我一个页面当中有多个日期选择,有一些是display:none的状态,这样的话,ie8中会报错。所以我就又修改了下代码
代码如下,代码所在文件在phpcms/libs/classes/form.class.php 208行附近添加
$str .= '<script type="text/javascript"> Calendar.setup({ weekNumbers: '.$showweek.', inputField : "'.$id.'", trigger : "'.$id.'", dateFormat: "'.$format.'", showTime: '.$showsTime.', minuteStep: 1, onSelect : function() {this.hide();}, onChange : function (cal){ try { document.getElementById("'.$id.'").focus(); } catch(err) { } } }); </script>';这样的话,就解决了在ie和chrome中formvalidator无法验证的问题。
相关文章推荐
- phpcms v9中formvalidator无法验证时间插件返回的数据解决办法
- System.Web.HttpException: 无法验证数据解决办法
- FireFox中使用JQuery的ajaxfileupload插件返回JSON格式数据提示保存的解决方法。
- 解决Yii2 启用_csrf验证后POST数据仍提示“您提交的数据无法验证”
- qt udp程序,在Windows中可以正常收取数据,到了Ubuntu中无法正常收取数据问题解决办法
- ThinkPHP3.0 RBAC示例登录验证失败无法返回登录解决
- 关于vs2010服务器资源管理器-再添加数据连接时无法获取服务器名的解决办法
- hbuilder的aptana php插件无法提示命名空间之外函数和对象的解决办法
- android 3.2 之后无法直接往sdcard写数据问题解决办法
- phpcms v9 附件无法上传解决办法
- 安装WP8 SDK出现“根据当前系统时钟或签名文件中的时间戳验证时要求的证书不在有效期内”的解决办法
- $.ajax返回的JSON格式的数据后无法执行success的解决方法
- 解决SpringMVC 返回Java8 时间JSON数据的格式化问题处理
- Xcode更新新版本后插件无法使用的解决办法
- sock无法接受数据的解决办法
- 解决Yii2 启用_csrf验证后POST数据仍提示“您提交的数据无法验证”
- 从数据库取到数据转换json后,时间格式带上T的解决办法
- jpa缓存导致无法查询到更新后的数据&android出现ANR的一个解决办法
- WordPress无法在线安装主题、插件及快速发布无法上传图片的解决办法
- WebAPI返回数据类型解惑 以及怎样解决Extjs无法解析返回的xml