Tôi đang ở trong một tình huống tò mò mà trước đây tôi không gặp vấn đề gì khi đạt được những gì tôi đang tìm kiếm. Các mã sau đây là một phần của một trang HTML mà là để lưu trữ một textbox giàu TinyMCE:Làm thế nào để thiết lập văn bản ban đầu trong một văn bản TinyMCE?
...
<textarea id="editing_field">This text is supposed to appear in the rich textbox</textarea>
...
Lúc đầu này làm việc như dự định, tạo ra một textbox phong phú với các văn bản kèm theo trong nó. Tuy nhiên, tại một số thời điểm, mã TinyMCE đã quyết định rằng HTML văn bản phải được chuyển đổi thành:
<textarea id="editing_field" style="display: none;"/>
This text is supposed to appear in the rich textbox
Điều này làm cho văn bản bên dưới hộp văn bản không chính xác lý tưởng. Tôi không có một đầu mối những gì gây ra sự thay đổi hành vi này, mặc dù tôi cũng đang sử dụng jQuery cùng với nó nếu điều đó có thể có hiệu lực.
Tôi có thể giải quyết vấn đề bằng cách tải nội dung vào hộp văn bản bằng javascript sau khi trang đã tải, bằng cách sử dụng ajax hoặc bằng cách ẩn văn bản trong HTML và chỉ di chuyển văn bản đó. Tuy nhiên, tôi muốn phát ra văn bản vào hộp văn bản trực tiếp từ PHP nếu có thể. Bất cứ ai cũng biết những gì đang xảy ra ở đây và làm thế nào để sửa chữa nó?
Cập nhật 2: Tôi đã sao chép thành công hiện tượng gây ra thay đổi hành vi: Lúc đầu, tôi chỉ có văn bản thuần túy trong vùng văn bản như trong đoạn mã đầu tiên. Tuy nhiên, sau khi lưu nội dung văn bản sẽ trông như thế này:
<p>This text is supposed to appear in the rich textbox</p>
Sự hiện diện của thẻ p
gây TinyMCE để kích hoạt việc chuyển đổi giữa một textarea kèm theo một textarea mà chỉ là một thẻ duy nhất (như minh họa ở trên) .
Cập nhật 1: thêm TinyMCE tập tin cấu hình:
tinyMCE.init({
// General options
mode : "exact",
elements : "editing_field",
theme : "advanced",
skin : "o2k7",
skin_variant : "black",
plugins : "safari,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",
save_onsavecallback : "saveContent",
// Theme options
theme_advanced_buttons1 : "save,newdocument,|,bold,italic,underline,strikethrough,|,justifyleft,justifycenter,justifyright,justifyfull",
theme_advanced_buttons2 : "search,replace,|,bullist,numlist,|,outdent,indent,blockquote,|,undo,redo,|,forecolor,backcolor",
theme_advanced_buttons3 : "hr,removeformat,|,sub,sup,|,charmap,emotions,|,print,|,fullscreen,code",
theme_advanced_buttons4 : "styleselect,formatselect,fontselect,fontsizeselect",
theme_advanced_toolbar_location : "top",
theme_advanced_toolbar_align : "left",
theme_advanced_statusbar_location : "bottom",
theme_advanced_resizing : false,
// Drop lists for link/image/media/template dialogs
template_external_list_url : "lists/template_list.js",
external_link_list_url : "lists/link_list.js",
external_image_list_url : "lists/image_list.js",
media_external_list_url : "lists/media_list.js",
// Replace values for the template plugin
template_replace_values : {
username : "Some User",
staffid : "991234"
},
width : "450",
height : "500"
});
Textarea của bạn có nằm trong thành phần