我在一个jsp页面上有个表单,表单里有个ckeditor控件,用来填写内容,而且不能为空,所以我用javascript来判断ckeditor是否为空,可是当第一次提交表单的时候,得到的是空值(""),而第二个提交时却可以正常提交,请问各位,这是什么原因,ckeditor的问题,那有什么解决办法?急。

解决方案 »

  1.   

    呵呵,都没有,js没有问题!
    if(frm.info_body.value.ktrim() == '') {
    showmsg(msg, '请填写内容', 'msg_alert');
    return false;
    }
    info_body是ckeditor的name属性
      

  2.   

    你可以打印下frm.info_body.value.ktrim()
    有可能第二次值变了,不为空
      

  3.   

    直接用document.getElementById();这样获取值,不容易出错,有的浏览器不兼容name属性了。
    或者把你的js方法在页面加载的时候,就赋上值;
    你的方法获取不到值,可能原因是实际没有值,或者方法调用的时间不对。
      

  4.   

    不是啊。用document.getElementById();第一次也同样得不到值,而第二次就可以,方法是在提交表单时onsubmit时调用的!
      

  5.   

    一个是你的函数提交的 一个是你的form表单提交的
      

  6.   

    控件取值不是这么取的吧
      var htmltext=document.frames["textframe"].getText()
         document.edit_form.content.value=htmltext
    frames["textframe"]这个是编辑器名称就是name
    edit_form 这个是form表单
      

  7.   

    别判断了,每次提交前先 alert(frm.info_body.value)看看
      

  8.   

    第一次alert(frm.info_body.value)为空,第二次不为空呀!是不是CKeditor的原因呀!