2017-12-12 18 views
-2

このコードは、5行目のgetElementByIdに関するエラーを何か助けてくれますか? それは定義されていないと言います。getElementById変数構文エラーの取得を続ける

Javascriptを

document.getElementById('input').onkeypress = function(e) { 
    if (!e) e = window.event; 

    var keyCode = e.keyCode || e.which; 

    if (keyCode == '13') 
     var commandInput=getElementById("input").value; //this is the line that keeps giving me errors 

    testforCommand(); 
    return false; 
} 
} 

HTML

<body onLoad="typeWriter()"> 
<p id="output"></p> 
</br> 
<p> ♮- </p><input id="input" type="text" maxlength="50" spellcheck="false"> 
</body> 
+0

関連するHTMLも共有してください。したがって、[最小、完全で検証可能な例**](http://stackoverflow.com/help/mcve)を構成してください。また、 'getElementById'ではなく' document.getElementById'を探しています。 –

+1

これは 'document.getElementById()'にする必要があります。 'document'を忘れてしまいました。また、 'if'ブロックに中カッコを追加してください。あなたのコードは期待通りの結果を出せません。 –

+0

また、JSコードの最後に '}'という余分な閉じ括弧があるようです。また、それは '
'、**ではなく** '
' – Phil

答えて

0

getElementByIddocument、ないwindowまたはグローバルに宣言されています。

0

私はあなたがイベントを処理している要素を検索する必要はありませんgetElementById

0

と呼ばれる別の機能を持っている場合を除き、コードが

var commandInput=document.getElementById("input").value; 

されるべきだと思います。 addEventListenerで追加されたハンドラまたはonEventNameプロパティを設定したハンドラは、this値をイベントリスナーが追加された要素に設定して呼び出されます。これは、イベントがキャプチャされた場合や、バブルアップした場合にイベントが発生した要素である必要はありません。ですから、この場合に必要なのは、すでに述べたように

var commandInput = this.value; 

で、エラーのための技術的な理由は、getElementByIddocumentないwindowの方法であるということです。

関連する問題