2011-06-30 139 views
40

我爲我的網站使用了TinyMCE的新聞編輯器。我希望能夠做的是有一個按鈕(在TinyMCE編輯器本身之外),我可以點擊掃描textarea的任何圖像,然後列出這些圖像作爲選項用於縮略圖的新聞文章。從TinyMCE textarea獲取價值

對於我的意思的想法,請訪問以下鏈接在此:https://docs.google.com/leaf?id=0B05m73kzudwPNzUwZjkyNmItYjZkMy00NTdlLTlkNDctOGRhYThjMzNjNTM5&hl=en_US

我的問題是,當有在textarea的文本的document.getElementById(「NewsArticle」)值不返回任何東西

另一個潛在的問題是,什麼顯示在textarea不是實際的代碼,但圖像等,所以我不知道它甚至可以在第一時間工作,但自從表單提交數據[新聞] [文章]價值重新回到了文本中,我認爲這可能是一個機會。

如果有人知道如何獲得任何內容或代碼TinyMCE的textarea的,或有更好的解決辦法,我很想聽聽

回答

109

TinyMCE有an api從編輯器訪問內容。

這個代碼可以從活動的編輯器的HTML:

// Get the HTML contents of the currently active editor 
tinyMCE.activeEditor.getContent(); 

// Get the raw contents of the currently active editor 
tinyMCE.activeEditor.getContent({format : 'raw'}); 

// Get content of a specific editor: 
tinyMCE.get('content id').getContent() 
+0

太感謝你了,我認爲一定有辦法! – Sanfly

+0

謝謝..其需要 – KingRider

+0

謝謝,運作良好。 –

3

嘗試

window.parent.tinymce.get('contentID').getContent(); 

出於某種原因,該股標準tinymce.get()呼叫沒有爲我工作,所以我嘗試這和它的工作。 :)

+0

非常感謝。我一直在努力與多個編輯器和你的這段代碼真的很適合我! –

+0

不客氣。我很高興它爲你工作。 :) – XtraSimplicity

1
var temp = tinymce.get('textAreaName').save(); 
console.log(temp); 

OR

var temp =tinymce.get('textAreaName').getContent(); 
console.log(temp); 
3

使用下面的語法,它會從你輸入文本區域刪除不想要的字符....

(((tinyMCE.get('YourTextAreaId').getContent()).replace(/(&nbsp;)*/g, "")).replace(/(<p>)*/g, "")).replace(/<(\/)?p[^>]*>/g, ""); 
+0

我會將其包裝在一個函數中,並將文本傳遞給它,但爲此努力+1。 –