0
私はaddEventListener
を使用してイベントをノードにバインドしています。 addEventListener
は、ノードにaddItem
の機能を追加します。しかし、私がenterを押すと、機能は実行されていません。ここでJavaScriptでEnterキーを押したときに関数を呼び出す
はJavaScriptを次のとおりです。ここで
document.getElementById('add-item').addEventListener('keypress', function (e) {
if (e.keyCode == 13) {
addItem();
}
}, false);
function addItem() {
var list = document.querySelector('ul.todo-list');
var newItem = document.getElementById('new-item-text').value;
var newListItem = document.createElement('li');
newListItem.className = 'todo-item';
newListItem.innerHTML = newItem + '<span class="remove"></span>';
list.insertBefore(newListItem, document.querySelector('.todo-new'));
//1. Empty the Input field once the item
document.getElementsByTagName('input')[0].value = '';
}
はHTMLです:
<li class='todo-new'>
<input id='new-item-text' type='text'/>
<a id='add-item' href='#'>+</a>
</li>
一方の機能は、私はJavaScriptでこれをやりたいclick
document.getElementById('add-item').addEventListener('click', addItem, false);
で実行されますjQueryライブラリを使用しないでください。
編集: 入力欄にイベントを添付します。
あなたは 'add-item' IDを持つ要素を持っていますか? Enterを押すと、その項目はフォーカスされますか? [あなたのコードの実例です] –
あなたの質問に[mcve]を投稿してください。 – j08691
@MaihanNijat j08691が言ったように、最小限で完全で検証可能な例を投稿してください。最初のコメントを編集して、コードの動作例を含めました。 –