主题: textarea不能写入内容
作者: 祝师奶, 发布日期: 2010-08-07 18:31:43, 浏览数: 10101

您好!我的textarea加上了文本编辑器之后就不能往里写入内容,但是点击html就能写入内容。请问是什么问题导致呢?还有我把 

 <script >
   KE.init({
    id : 'content2',
    afterCreate : function(id) {
     KE.util.focus(id);
    }
   });
   KE.show({
    id : 'content2',
    resizeMode : 1,
    allowPreviewEmoticons : false,
    allowUpload : false,
    items : [
    'source','fontname', 'fontsize', '|', 'textcolor', 'bgcolor', 'bold', 'italic', 'underline',
    'removeformat', '|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist',
    'insertunorderedlist']
   });
  </script>

加入页面代码后,页面打不开,如果我加到window.onload方法里就能。

作者: Roddy, 发布日期: 2010-08-07 22:30:46
好像重复调用了KE.init,KE.show里面已经包含KE.init。
回复
作者: 祝师奶, 发布日期: 2010-08-08 22:33:46

谢谢你的意见。可是我去掉了之后,效果还是一样不能填入类容。就好像你们那个只读模式那样。代码如下:

  <td colspan="3">
       <textarea class="content" name="content" cols="140" rows="22" id="content">
        <c:out value="${temptaleTempInfo.content}" />
       </textarea>
      </td>
     <script>
     KE.init({
     id : 'content',
     afterCreate : function(id) {
      KE.util.focus(id);
     }
     });
     </script>

 

另外,这是我判断编辑器什么时候出来的语句:

function changetext(obj){
  if(obj.value=='220002'){
   document.getElementById('title').disabled=true;
   //alert('请将"内容"切换到文本模式');
   javascript:KE.remove('content');
  }else {
   document.getElementById('title').disabled=false;
   //alert('请将"内容"切换到HTML模式');
   javascript:KE.create('content');
  }
 }

 

望多多赐教

回复
作者: 祝师奶, 发布日期: 2010-08-08 22:36:56

我加过其他编辑器,其中也有一些是出现这样的问题如(jquery.rte),但我加HtmlBox就能填入内容;不知道是什么原因?

回复
作者: 祝师奶, 发布日期: 2010-08-09 08:45:46

发现了个问题就是我们的编码采用GBK<%@ page language="java" pageEncoding="GBK"%>,

而你们设置的是utf-8<%@ page contentType="text/html;charset=utf-8"%>

这个?我没主意了,有什么影响?我们整个项目都是用GBK编码。

 

回复
作者: 祝师奶, 发布日期: 2010-08-09 09:13:57

我搞错了。应该是我设置这个页面编码:<%@ page language="java" pageEncoding="GBK"%>为GBK,而在同一个页面引入你们开发的js采用的是utf-8:<script charset="utf-8" src="<%=request.getContextPath()%>/js/risk/kindeditor.js"></script>  我想是不是这个原因引起textarea不能写入内容,点击html或者卸载编辑器才能写内容。下面是我的页面代码(为了排除其他原因,现在只剩下textarea的代码了):

<%@ page language="java" pageEncoding="GBK"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core"%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt"%>
<html>
 <head>
  <title>基本信息</title>
  <script charset="utf-8" src="<%=request.getContextPath()%>/js/risk/kindeditor.js"></script>
 </head>
 <body>
   <textarea class="content" name="content" cols="140" rows="22" id="content">
   </textarea>

     <script>
     KE.init({
     id : 'content',
       afterCreate : function(id) {
          KE.util.focus(id);
          }
     
     });
     </script>
  <br />
  <input type="button" name="button" value="加载编辑器" onclick="javascript:KE.create('content');" />
  <input type="button" name="button" value="卸载编辑器" onclick="javascript:KE.remove('content');" />
 </body>
</html>

 

补充下:我把我的页面代码全部去掉换成从你们下载下来的examples包里的第三个例子的代码,textarea内容还是不能填写。

无论我把myEclipse的编码改成utf-8还是gbk。

回复
作者: 祝师奶, 发布日期: 2010-08-09 12:38:10

有人来解答下吗?

回复
作者: error, 发布日期: 2010-08-09 21:57:57

我也碰到同样的问题,求解,我的页面本身也是UTF8

 

在IE/谷歌浏览器下都是正常的,在FF3.6下编辑器无法获得焦点。

 

<head>
<script>
KE.init({
id : 'ke_content',
afterCreate : function(id) {
KE.util.focus(id);
}
});
</script>
</head>

<body>
..................

<script language="javascript" type="text/javascript">
KE.create('ke_content');
</script>
</body>

回复
作者: Roddy, 发布日期: 2010-08-09 22:14:29
KE.create放在window.onload里不行吗。用jQuery的话,放在$.ready里。
回复
发表新帖 发表回复