2012-04-23 82 views
44

我正在使用Codemirror的textarea插件,但我無法檢索textarea的值。如何獲取Codemirror textarea的值

代碼:

var editor = CodeMirror.fromTextArea(document.getElementById("code"), { 
    lineNumbers: true, 
    matchBrackets: true, 
    mode: "text/x-csrc" 
    }); 


function showCode() 
{ 
    var text = editor.mirror.getCode(); 
    alert(text); 
} 

它顯示錯誤:

editor.getCode() is not a function. 
+1

'console.dir(editor.morror)'和'console.dir(editor)'在chrome中顯示的是什麼? – sissonb 2012-04-23 17:56:49

回答

59

嘗試使用getValue()代替getCode()

將可選參數傳入getValue(分隔符)以指定用於分隔行的字符串(默認值爲\n)。

+1

有沒有一種方法可以在不調用getValue()的情況下獲得對文本的引用?如果你在編輯器中有很多文本,這個函數真的很慢,它會鎖定UI線程。 – Gubatron 2013-09-06 02:47:37

+0

cm.getValue()和cm.doc.getValue()是否有區別? – 425nesp 2014-08-14 23:16:15

22

這對我很好。

editor.getValue() 
0

use your_editor_instace.getValue();

它會正常工作,因爲在codemirror中沒有名稱爲getCode()的函數。

設置值使用your_editor_instance.setValue();