2016-04-11 25 views
1

當我的textarea只是一個textarea,oninput發射我的功能。現在我已經把textarea轉換成CodeMirror了,我不能得到console.log()來註冊。使用與CodeMirror的輸入

這是我使用的CodeMirror

var editor = CodeMirror.fromTextArea(document.getElementById("textArea"), { 
mode: "javascript", 
lineNumbers: true, 
lineWrapping: true, 
theme : 'monokai' 
}); 

這裏是oninput功能

<textarea id="textArea" oninput="return myKeyPress(event)"></textarea> 

這裏textarea的是我的職責,應該由oninput

function myKeyPress(e) { 
    socket.emit('textAreaText', document.getElementById('textArea').value); 
    console.log("first emit"); 
    } 

如何調用我可以讓這個函數在textarea接收輸入時運行嗎?

+0

的「改變」事件似乎是爲我工作︰'editor.on(「change」,()=> {/ * ... * /});' – JoeRocc

回答

0

我不知道這是否是你想要的,但是這是爲我工作,我評論插座,因爲我不能確定它小提琴:

<script> 
var editor = CodeMirror.fromTextArea(document.getElementById("textArea"), { 
mode: "javascript", 
lineNumbers: true, 
lineWrapping: true, 
theme : 'monokai' 
}); 
function myKeyPress(e){ 
//socket.emit('textAreaText', document.getElementById('textArea').value); 
console.log("first emit"); 
} 
</script> 
<textarea id="textArea" oninput="return myKeyPress(event)"></textarea> 

Here the fiddle

+1

它看起來像工作,因爲JSFiddle跳過整個Code Mirror的事情,你只是有一個正常的textarea – PencilCrate