2017-01-29 2 views
0

Я новичок в jquery, и я делаю свой первый проект, который является базовым для списка. Я пытаюсь заставить его работать, когда кто-то нажат, но почему-то ничего не происходит.Как добавить ярлык для клавиатуры введите в jquery список дел

$(document).ready(function() { 
 
    $("#btn2").click(
 
    function() { 
 
     var toAdd = $("#listItem").val(); 
 
     $("ol").append("<li>" + toAdd + "</li>"); 
 
    }); 
 
}); 
 

 
$(document).on('dblclick', 'li', function() { 
 
    $(this).toggleClass('strike').fadeOut('slow'); 
 
}); 
 

 
$('#listItem').keypress(function(event) { 
 
     var keycode = (event.keyCode ? event.keyCode : event.which); 
 
     if (keycode == '13') { 
 
     var toAdd = $("#listItem").val(); 
 

 

 

 
     $("ol").append("<li>" + toAdd + "</li>"); 
 
     });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 

 

 
<form name="toDoList"> 
 
    <input type="text" id="listItem" name="ListItem" /> 
 
</form> 
 
<ol> 
 
</ol> 
 
<button id="btn2">Add something</button> 
 
<p>something</p> 
 
<p>ldldl</p>

+1

Добро пожаловать на SO. Пожалуйста, прочитайте [mcve] - я создаю для вас фрагмент. Как вы можете видеть при нажатии TIDY, оно не завершено. Также смотрите консоль при нажатии. У вас также был недопустимый HTML с html в голове и т. Д. – mplungjan

ответ

1
  • добавлен все обработки в случае нагрузки события
  • закрыли кронштейны
  • удален), если из
  • добавленного класс
  • event.which нормализуется by jQuery

$(function() { 
 
    $("#btn2").click(function() { 
 
    var toAdd = $("#listItem").val(); 
 
    $("ol").append("<li>" + toAdd + "</li>"); 
 
    }); 
 
    $("#listItem").keypress(function(e) { 
 
    var keycode = e.which; 
 
    if (keycode == '13') { 
 
     var toAdd = $("#listItem").val(); 
 
     $("ol").append("<li>" + toAdd + "</li>"); 
 
    } 
 
    }); 
 
}); 
 

 
$(document).on('dblclick', 'li', function() { 
 
    $(this).toggleClass('strike').fadeOut('slow'); 
 
});
.strike { text-decoration:line-through}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 

 

 
<form name="toDoList"> 
 
    <input type="text" id="listItem" name="ListItem" /> 
 
</form> 
 
<ol> 
 
</ol> 
 
<button id="btn2">Add something</button> 
 
<p>something</p> 
 
<p>ldldl</p>

+0

Что такое event.which mean –

+0

Некоторые браузеры используют keycode, некоторые из которых. но jQuery нормализует его: http://stackoverflow.com/questions/12172646/event-keycode-vs-event-which – mplungjan

Смежные вопросы