返回旧版| 微信建站| 建站之家论坛| 我要建站 | 建站学习 | 加入收藏
PHP基础当前位置:首页 > HTML教程 > PHP基础 > 正文

KindEditor得不到textarea值的解决方法

发布时间:2017-03-05 15:06:48   来源:   点击:
以前有朋友遇到过这个问题,就是KindEditor在火狐下或者其他浏览器下都无法得到textarea文本框的值,点击表单提交按钮得到的是空白。我也也无意遇到这个问题,于是想认真找下原因。
首先描述下我这边KindEditor的错误现象:
1、在IE8/FF下均得不到值;
2、当点击KindEditor的全拼按钮切换到全屏模式输入时,再返回正常模式,可以得到值;
3、我用的是jQuery的点击事件提交表单的,提交,无法得到值;
4、直接用表单的提交按钮可以得到值。

下面以 KindEditor 4.x 版本为例说明,先贴上正确的代码:
<script type="text/javascript">  KindEditor.ready(function(K){      K.create('textarea[name="content"]', {          themeType: 'simple',          resizeType: 1,          uploadJson: 'KEditor/upload_json.php', //改成你的路径         fileManagerJson: 'KEditor/file_manager_json.php',          allowFileManager: true,          //经测试,下面这行代码可有可无,不影响获取textarea的值          //afterCreate: function(){this.sync();}          //下面这行代码就是关键的所在,当失去焦点时执行 this.sync();          afterBlur: function(){this.sync();}      });  });  </script> 
相关说明:
从上面的代码可以看到,解决方法在于最后一行代码,afterBlur: function(){this.sync();},当失去焦点时执行 this.sync();
那么这个 this.sync(); 函数是干嘛的呢?简单的说:这个函数就是同步KindEditor的值到textarea文本框。
官方解释:
//天涯PHP博客 http://blog.phpha.com
sync()
将编辑器的内容设置到原来的textarea控件里。
参数: 无
返回: KEditor
地址:http://www.kindsoft.net/docs/editor.html#sync

补充:在 KindEditor 4.x 版本中,KE.sync(); 要改成 this.sync();
版权所有:郑州腾石网络科技有限公司 备案信息:豫ICP备18019117号
站长QQ:2863868475 业务合作咨询:15137100750(同微信)
本站所有投放的广告是有其他网站提供,不代表本站立场,同时网站首页广告位对外出租详情咨询本站站长!同时欢迎广大站长加入个人建站团队
  • 建站客服
  • CMS仿站
  • CMS学习
  • 技术交流群:336572814