OracleApex:富文本编辑器赢得';无法在jQuery对话框中工作

OracleApex:富文本编辑器赢得';无法在jQuery对话框中工作,jquery,oracle,modal-dialog,ckeditor,oracle-apex,Jquery,Oracle,Modal Dialog,Ckeditor,Oracle Apex,我正在使用APEX 4.2.4,并尝试创建一个包含Rick文本编辑器(CKEditor3)的对话框 我在一个区域(区域id:#notification)中添加了一个富文本编辑器字段,并将style=“display:none;”“设置到此区域。然后我有一个按钮,当点击时,它执行以下JS代码并触发模式: function notification() { var jqDialog = $('#notification').dialog( { modal: true, aut

我正在使用APEX 4.2.4,并尝试创建一个包含Rick文本编辑器(CKEditor3)的对话框

我在一个区域(区域id:
#notification
)中添加了一个富文本编辑器字段,并将
style=“display:none;”“
设置到此区域。然后我有一个按钮,当点击时,它执行以下JS代码并触发模式:

function notification() {
  var jqDialog = $('#notification').dialog(
    { modal: true,
      autoOpen: true,
      width: '500px',
      closeOnEscape: true
    });
}
单击按钮时,模态将按其应打开,但编辑器的iframe为空(无法在其中单击并添加内容)

如果我从模式中删除编辑器,并正常地使用页面加载进行渲染,我会看到编辑器,并且它是可编辑的,没有问题。但是从我隐藏它(使用
display:none;
visibility:hidden;
)然后使用模式显示它的那一刻起,它就不再是可编辑的了


它在Firefox 27.0.1和Chrome 33.0.1750.154 m中不起作用,但在IE 10和IE 11中起作用。

很可能是一个bug,上面已经描述过。但对我来说,这个解决方案不起作用。由于apex的性质,不可能将jquery-ui-dialog-patch-ckeditor.js文件放在标签中init ckeditor文件之后。唯一可行的解决方案是:

  • 在“页面加载时执行”区域的“页面属性”中写入:

  • 然后,在动态操作中,在事件“单击”按钮时,您可以重新定义对话框选项并打开对话框:

    $('#notification').dialog({
        modal: true,
        autoOpen: true,
        width: 700,
        height: 400,
        closeOnEscape: true,
        autoOpen: false
    });
    
    $('#notification').dialog("open");
    
  • 它适用于所有现代浏览器,包括IE10和IE11

    $('#notification').dialog({
        modal: true,
        autoOpen: true,
        width: 700,
        height: 400,
        closeOnEscape: true,
        autoOpen: false
    });
    
    $('#notification').dialog("open");