>웹 프론트엔드 >JS 튜토리얼 >Jquery는 Enter 키에 응답하고 양식 작업 code_jquery를 직접 제출합니다.

Jquery는 Enter 키에 응답하고 양식 작업 code_jquery를 직접 제출합니다.

WBOY
WBOY원래의
2016-05-16 16:41:151348검색

이렇게 로그인 페이지를 만들고 Form을 제거하고 Jquery의 Ajax를 직접 사용하여 서버와 상호작용했는데 이 경우 브라우저는 기본적으로 데이터를 제출하는 Enter 키에 응답하지 않습니다. . Jquery가 Enter 키의 응답을 대신하도록 하세요.

코드 복사 코드는 다음과 같습니다.

$("#loginbox 입력[type='submit']").click(function() {
//Ajax 및 서버 대화형 검증
});
$('#loginbox').keydown(함수(e){
If(e.keyCode == 13){
//로그인 버튼 클릭을 시뮬레이션하고 위의 Click 이벤트를 트리거합니다.
​​​​ $("#loginbox 입력[type='submit']").click();
}
});

keydown을 사용하면 IE6이 작동하지 않을 수 있습니다. 해결방법은 아래를 읽어주세요

3가지 키보드 이벤트가 있습니다:

Keydown, keypress 및 keyup은 각각 누르기, 올리지 않고 누르고 있음, 키보드 올리기를 의미합니다.

올바른 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

$(문서).keyup(함수(이벤트){
if(event.keyCode ==13){
$("#submit").trigger("클릭");
}
});

권장사항: 노트북 키보드가 실수로 터치되는 것을 방지하기 위한 키업

1. 일부 문서에는 다음과 같이 적혀 있습니다.

코드 복사 코드는 다음과 같습니다.

$(창).keydown(함수(){
...
})

XP 시스템의 IE6에서는 실패합니다.

2. INPUT도 있습니다

코드 복사 코드는 다음과 같습니다.

$("입력").keydown(function(){
...
})

이 경우 키보드 이벤트는 입력에 포커스가 있을 때만 모니터링할 수 있습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.