2013-01-22 62 views
1

我加載HTML到一系列textareas,我給一種風格的顯示:無; 然後我有一個很好的下拉菜單,選項包含每個textarea的ID屬性的值。TinyMCE - 從其他Textareas加載Html

我有jquery監聽下拉列表的變化,當檢測到ID時,我用可愛的TinyMCE插件將相應的textarea的值加載到主textarea中。

這一切工作正常,沒有TinyMCE。但編輯器不會顯示動態加載的html文本。

任何人都可以看到我做錯了什麼?

代碼:

<textarea id="template1"><div>Some html <b>inside this textarea</b><br>And more</textarea> 
<textarea id="template2"><div>More html <b>inside this textarea</b><br>And more</textarea> 

<select name="templateid" id="templateid"> 
    <option value="0">-------------</option> 
    <option value="1">Load Template 1</option> 
    <option value="2">Load Template 2</option> 
</select> 

<textarea id="maintemplate"></textarea> 

<script language="javascript" type="text/javascript"> 
$(document).ready(function(){ 

$("#templateid").change(function(){ 
    var templateid = $(this).val(); 
    if(templateid == 0){ $("#templatetext").val(""); return false; } 
    var html = $("#template"+templateid).val(); 
    $("#maintemplate").val(html); // this is ignored? 
    return false; 
}); 


$("textarea#maintemplate").tinymce({ 
    script_url : '/includes/modules/tiny_mce/tiny_mce.js',// Location of TinyMCE script 
    // General options 
    theme : "advanced", 
    plugins : "pagebreak,style,layer,table,save,advhr,advimage,advlink,emotions,iespell,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,noneditable,visualchars,nonbreaking,xhtmlxtras,template,advlist", 
    force_p_newlines : false, 
    force_br_newlines : true, 
    /*forced_root_block : '',*/ 
    // Theme options 
    theme_advanced_buttons1 : "bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull,|,styleprops,forecolor,backcolor,|,link,unlink,image,|,bullist,numlist,removeformat,code,|,cleanup,preview", 
    theme_advanced_buttons2 : "", 
    theme_advanced_buttons3 : "", 
    theme_advanced_buttons4 : "", 
    theme_advanced_toolbar_location : "top", 
    theme_advanced_toolbar_align : "left", 
    theme_advanced_statusbar_location : "bottom", 
    theme_advanced_resizing : true, 
}); 

}); 
</script> 

你會看到:$("#maintemplate").val(html);就是我加載其他文本域的值。但編輯只是不顯示它。 (沒有編輯器,它的工作原理)

+0

不是正面的,但我認爲像'tinyMCE.activeEditor.setContent(html);'代替'$(「#maintemplate」)。val(html);' ' –

回答

1

任何人都可以看到我做錯了什麼?

這裏是工作的代碼(粘貼,因爲它是)的DEMO ....

我可以指出的唯一的事情是,你不加載

<script type="text/javascript" src="../jscripts/tiny_mce/jquery.tinymce.js"></script> 

希望它有助於!