2016-04-11 12 views
1

Wenn meine TextArea nur eine TextArea war, hat oninput meine Funktion ausgelöst. Jetzt, da ich den Textbereich in einen CodeMirror umgewandelt habe, kann ich die console.log() nicht mehr registrieren.Verwendung von oninput mit CodeMirror

Dies ist, wie ich die Codemirror verwendet

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

Hier wird der Textbereich mit oninput Funktionalität ist

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

Hier ist meine Funktion, die von oninput

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

Wie aufgerufen werden soll Kann ich diese Funktion ausführen, wenn das Textfeld eine Eingabe erhält?

+0

die „change“ -Ereignis scheint für mich zu arbeiten: 'editor.on (" change ",() => {/ * ... * /});' – JoeRocc

Antwort

0

Ich bin mir nicht sicher, ob dies ist, was Sie wollen, aber das ist für mich arbeiten, bemerkte ich die Fassung, weil ich es an der Geige definieren kippe:

<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

Es sieht so aus, als ob JSFiddle die ganze Code Mirror-Sache überspringt und Sie einfach Habe ein normales Textfeld – PencilCrate

Verwandte Themen