[javascript] 텍스트 입력 필드에서 Enter 키 감지
특정 입력에서 Enter 키를 누르면 기능을 수행하려고합니다.
내가 뭘 잘못하고 있니?
$(document).keyup(function (e) {
if ($(".input1").is(":focus") && (e.keyCode == 13)) {
// Do something
}
});
Enter 키를 누르면 .input1
기능 을 수행하는 더 좋은 방법이 있습니까?
답변
$(".input1").on('keyup', function (e) {
if (e.keyCode === 13) {
// Do something
}
});
//keyup not compatible with Jquery select(), Keydown is.
답변
event.key === “입력”
가장 최근의 클리너 :을 사용하십시오 event.key
. 더 이상 임의의 숫자 코드가 없습니다!
const node = document.getElementsByClassName(".input")[0];
node.addEventListener("keyup", function(event) {
if (event.key === "Enter") {
// Do work
}
});
jQuery를 사용해야하는 경우 :
$(document).keyup(function(event) {
if ($(".input1").is(":focus") && event.key == "Enter") {
// Do work
}
});
답변
$(document).keyup(function (e) {
if ($(".input1:focus") && (e.keyCode === 13)) {
alert('ya!')
}
});
또는 입력 자체에 바인딩하십시오.
$('.input1').keyup(function (e) {
if (e.keyCode === 13) {
alert('ya!')
}
});
필요한 keyCode를 확인하려면 웹 사이트 http://keycode.info를 사용하십시오.
답변
Enter
텍스트 상자에서 누른 키 를 감지하려면 이것을 시도하십시오 .
$(function(){
$(".input1").keyup(function (e) {
if (e.which == 13) {
// Enter key pressed
}
});
});
답변
이 질문에 대답하기에는 너무 늦을 수 있습니다. 그러나 다음 코드는 단순히 enter 키를 방지합니다. 복사하여 붙여 넣기 만하면됩니다.
<script type="text/javascript">
function stopRKey(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if ((evt.keyCode == 13) && (node.type=="text")) {return false;}
}
document.onkeypress = stopRKey;
</script>
답변
내가 찾은 가장 좋은 방법은 사용 keydown
하는 keyup
것입니다 (나에게 잘 작동하지 않음).
참고 : 일반적으로 Enter 키를 누를 때 일부 작업을 수행하려고 할 때 양식 제출을 원하지 않는 것이므로 양식 제출을 비활성화했습니다. 🙂
$('input').keydown( function( event ) {
if ( event.which === 13 ) {
// Do something
// Disable sending the related form
event.preventDefault();
return false;
}
});
답변
나를 위해 일하는 해결책은 다음과 같습니다.
$("#element").addEventListener("keyup", function(event) {
if (event.key === "Enter") {
// do something
}
});