我正在使用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和11。
答案 0 :(得分:0)
很可能是一个错误,在那里描述了http://bugs.jqueryui.com/ticket/4727。但就我而言,这个解决方案并不奏效。由于顶点的性质,在< head>中的init ckeditor文件之后立即放置jquery-ui-dialog-patch-ckeditor.js文件是不可能的。标签。唯一的解决方案是:
"页面属性"在区域"当页面加载时执行"写:
$('#notification').dialog({
modal: true,
autoOpen: true,
width: 500,
closeOnEscape: true,
autoOpen: false
});
然后,在动态动作中,点击事件'点击'对于您的按钮,您可以重新定义对话框选项并打开对话框:
$('#notification').dialog({
modal: true,
autoOpen: true,
width: 700,
height: 400,
closeOnEscape: true,
autoOpen: false
});
$('#notification').dialog("open");
适用于所有现代浏览器,包括IE 10和11。