主题: 强烈建议新版本中不要删除自动同步功能
作者: 天韩地庚, 发布日期: 2013-02-25 14:33:55, 浏览数: 2703

之前发过一个帖http://www.kindsoft.net/view.php?bbsid=5&postid=4925&pagenum=6,说的是结合jquery.validate.js进行验证的时候会获取不到编辑器中的值的问题,Roddy给我的解释是4版本中为了性能去掉了自动同步功能,当表单提交的时候才会去执行同步功能,他说不了解jquery.validate.js的原理,建议我再提交表单之前执行sync()方法,上一个项目我这样做了,在每次提交表单之前都执行sync()方法,我且不说jquery.validate.js的原理是怎样的,但是人家同样是在表单提交后才执行校验的,这个也是表单提交的时候执行sync()方法的,为什么还是无法获取到值呢,Roddy的建议是可以解决我这个问题,但是觉得不爽,一个是自己每次表单提交都要写上这段代码,而是觉得文档说表单提交的时候会执行sync()方法,那么我为什么在之前要写呢,只是为了解决我这个问题吗?这次项目用回3版本了,性能差也差不到哪去,主要是安逸,我不知道作者为什么要移除这个功能,移除可以但是至少保留一下3版本中的syncType ="auto"这个auto选项值吧,让人可以自动选择。




额,上面说的感觉白说了,用3版本,syncType为默认值,也就是“form”,可以正常操作,这个没法说了,用回3了

作者: 小浪子, 发布日期: 2013-02-25 15:38:26

本来是保留了的。。但是不起作用

http://www.kindsoft.net/docs/option.html#synctype

 

syncType
同步数据的方式,可设置”“、”form”,值为form时提交form时自动同步,空时不会自动同步。

数据类型: String
默认值: “form”

 

默认值: “form”。。就是不起作用

 

回复
作者: 天韩地庚, 发布日期: 2013-02-25 15:59:35
回复小浪子:怎么回事呢,我测试了一下,3版本中也没设这个值,syncType也是用的默认值也就是form,但是3版本和这个jquery.validate.js进行绑定的时候就行,我看了jquery.validate.js的校验在校验之前它没进行真实的form.submit()操作,这样的话也就是说无论你这个设成什么3版本中都是自动同步的,我还看到他们用3的时候设置了这样的一个参数autoSetDataMode: true,这个我在3中也没看到哦,4中有没有,是不是这个设了就行了呢,唉,这个问题就是纠结啊,为了一点点性能,就去了,又不给用户一个选择权,唉
回复
作者: 小浪子, 发布日期: 2013-02-25 16:19:03

回复天韩地庚:要同步有很多办法。。

http://www.kindsoft.net/docs/option.html#afterchange

 

从我发的地址的最上面的:afterChange 到 afterBlur都可以进行同步的设置

afterChange: function() {
            this.sync();
}
afterTab: function() {
            this.sync();
}
afterFocus: function() {
            this.sync();
}
afterBlur: function() {
            this.sync();
}

// 实用的就是:afterChange,afterBlur

 

回复
作者: 天韩地庚, 发布日期: 2013-02-25 16:37:50
回复小浪子:恩 我找到一篇文章http://xidige.com/other/241,用afterChange解决了
回复
作者: 小浪子, 发布日期: 2013-02-25 16:50:52

回复天韩地庚:本身编辑器的API文档写的很清楚。都是你们这些懒人。懒的看的。

恶心下懒的蛇插进了你的P眼你。你都懒的动手拉出来的。

回复
发表新帖 发表回复