텍스트 영역에서 "Shift Enter"를 감지하고 새 줄을 생성하는 방법은 무엇입니까?
양식 제출에서 Enter 키를 누르면 일반적으로 양식 제출이 트리거됩니다. . 그러나 많은 텍스트 영역에서는 대신 Shift Enter를 눌러 새 줄을 만들 수 있도록 하는 것이 바람직합니다.
해결책 1: 양식 제출 스크립트 수정
특정 스크립트로 인해 Enter 키를 누르면 양식이 제출됩니다. 해당 스크립트를 찾아 Shift 없이 Enter 키를 눌렀을 때만 제출하도록 수정하세요. 예를 들어 다음 코드를 다음과 같이 변경하세요.
if (evt.keyCode == 13) { form.submit(); }
if (evt.keyCode == 13 && !evt.shiftKey) { form.submit(); }
해결 방법 2: 주요 이벤트 처리(모든 브라우저용)
양식 제출 스크립트에 대한 액세스가 부족한 경우 JavaScript를 사용하여 주요 이벤트를 처리하고 Shift Enter를 누를 때 줄바꿈을 삽입할 수 있습니다.
function handleEnter(evt) { if (evt.keyCode == 13 && evt.shiftKey) { if (evt.type == "keypress") { pasteIntoInput(this, "\n"); } evt.preventDefault(); } } // Handle both keydown and keypress for Opera $("#your_textarea_id").keydown(handleEnter).keypress(handleEnter);
이 코드는 Shift Enter를 누르면 키를 누를 때 텍스트 영역에 줄바꿈을 삽입합니다. keydown 및 keypress 이벤트를 모두 사용하여 극단적인 경우를 처리합니다.
참고: 이 솔루션에는 개행 문자를 텍스트 영역의 올바른 캐럿 위치에 붙여넣기 위한 외부 라이브러리 또는 사용자 정의 코드가 필요합니다.
위 내용은 양식 제출을 방지하고 텍스트 영역에서 Shift Enter를 사용하여 새 줄을 만드는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!