TinyMCE和JQuery对话框:TinyMCE只在模态时读取:对话框中为true
我在Dialog插件中使用TinyMCD插件。
一切正常,直到我将对话框的模态参数设置为true。 当我这样做时,TinyMCE textarea仅在第一次打开对话框时才能正常工作,然后变为只读。
以下是我的代码示例:
tinyMCE.init({ mode: 'none' }); var dlgComments = $('#dlgInternalComments'); if (dlgComments.length == 0) { dlgComments = $('').attr('id', 'dlgInternalComments'), txtAreaComments = $('').attr('id', 'txtInternalComments').appendTo(dlgComments); dlgComments.dialog({ height: 300, width: 800, modal:true, open: function () { if ($('#txtInternalComments_parent', $(this)).length == 0) { var ddd = {mode:'none'}; //$.extend({}, Globals.RichTextBox, { mode: 'none' }); txtAreaComments.tinymce(ddd); } }, buttons: { 'Parse': function () { processAuthorsParagraph(); $(this).dialog('close'); } } }); } else { dlgComments.dialog('open'); }
我不知道如何解决这个问题。 我从这里尝试了一些建议: http : //www.codestumps.com/2011/05/adding-tinymce-into-a-jquery-ui-dialog/但我还没有找到解决方案。
如果你能帮助我,非常感谢你。
问题解决了,这是完整的工作代码:
function removeTinyMCE () { tinyMCE.execCommand('mceFocus', false, 'dialog-modal'); tinyMCE.execCommand('mceRemoveControl', false, 'dialog-modal'); } function addTinyMCE() { jQuery('#dialog-modal').tinymce({ script_url: '/js/tiny_mce_3.2.7_jquery/jscripts/tiny_mce/tiny_mce.js', width: "800px", mode: "textarea", theme : "simple", }); } function addAuto() { $('#dialog-modal').dialog({ autoOpen: true, modal: true, title: "Email Dialog", open: addTinyMCE, close: function() { removeTinyMCE(); $(this).dialog('destroy'); }, buttons: { 'Cancel': function() { processAuthorsParagraph(); removeTinyMCE(); $(this).dialog('destroy'); } } }); }
对话框的html是: