selectbox의 옵션을 클릭하면 실행되는 이벤트 핸들러가 있습니다.추가 정보를 이벤트 처리기에 전달하십시오.
Ctrl 키 (눌림/누르지 않음)의 상태를 이벤트 처리기로 전달하는 방법이 있습니까? evt는 모든 주요 관련 속성이 정의되지 않았기 때문에이 정보를 포함하지 않습니다.
selectbox의 옵션을 클릭하면 실행되는 이벤트 핸들러가 있습니다.추가 정보를 이벤트 처리기에 전달하십시오.
Ctrl 키 (눌림/누르지 않음)의 상태를 이벤트 처리기로 전달하는 방법이 있습니까? evt는 모든 주요 관련 속성이 정의되지 않았기 때문에이 정보를 포함하지 않습니다.
change
이벤트 및 값change
이벤트를 입력하는 데 사용되는 키는 관련 키가있는 것이 아닙니다. jQuery의 .change()
설명서를 읽으십시오.
변경 이벤트는 값이 변경되면 요소로 전송됩니다. 이 이벤트는 요소, 상자 및 요소로 제한됩니다. 선택 상자, 체크 상자 및 라디오 단추의 경우 사용자가 마우스로 선택하면 이벤트가 즉시 발생하지만 다른 요소 유형의 경우 요소가 포커스를 잃을 때까지 이벤트가 연기됩니다. 당신은 어떤 입력 필드가
- :
예는 이것이다.
some name
"텍스트를 필드에 입력하십시오.some test
"으로 변경하십시오. 예 : 백 스페이스 몇 번을 눌렀을 때, 당신은 다음 필드로 이동합니다 (예. 탭 키를 사용하여, 또는 iOS 키보드 등에 다음을 눌러),onchange
이벤트 핸들러가 실행되고, 다른로 이동하는 경우 필드가 아니라 (즉, 필드가 포커스를 잃는 순간) 값을 입력하는 데 사용되는 모든 키에 대한 정보는 거의 무관합니다.keypress
이벤트를 사용하여, 당신은 예를 들어, keypress
이벤트를 사용하여 솔루션을 구현해야합니다. jQuery의 .keypress()
function에게 감사드립니다. 이 경우 이벤트 객체의 ctrlKey
속성 (예 : here)을 사용하면 Ctrl 키의 상태를 알 수 있습니다. https://stackoverflow.com/a/4604093/548696
keypress
/keydown
/keyup
에 저장 키에 대한 데모 및 change
에 읽기는 여기에 있습니다 : : 사용 예제는 여기
http://jsfiddle.net/tadeck/vPu94/
데모 초점에 기록 된 키 웁니다 change
이벤트가 발생할 때마다 모든 keypress
이벤트에 저장하고 (쉽게 편집 할 수 있고 다른 사례를 테스트 할 수 있음) 해당 이벤트를 읽고 (화면에 출력 함) 그는 필드 나뭇잎을 바꿨다.)
이 경우 어떻게 도움이되는지 알기가 어렵습니다. 데모 코드를 타 데크에게 보내 주시겠습니까? –
@ Beetroot-Beetroot : 기본적인 아이디어는 간단합니다. 'onchange'는 값을 입력하는 데 사용 된 키를 알지 못하고 'onkeypress'는이를 알고 있습니다. 따라서'onkeypress'를 사용하여 적절한 정보를 수집하고'onchange'가 호출 될 때 읽어야합니다. jQuery의'.data() '를 사용하여 특정 입력과 관련된 데이터를 저장 (변경) 할 수 있습니다. 나머지는 실제로 응용 프로그램의 실제 부분이며 특정 요구 (예 : 백 스페이스 처리 방법)에 따라 다릅니다. – Tadeck
@ Beetroot-Beetroot : 데모 링크를 추가했습니다. – Tadeck
변경 이벤트는 흐림 값의 변경에 대해서만 트리거하므로 키 개념이 없기 때문에 keyup, keydown, keypress 등을 사용해야합니다. live()는 최신 버전의 jQuery에서 제거되었습니다. – adeneo
다중 선택 드롭 다운을 구현 하시겠습니까? 그럴 경우, 당신을 위해 할 준비가 된 플러그인이 있습니다. –
그냥 CTRL + click을 클릭하면 Mac에서 컨텍스트 메뉴가 기본적으로 열립니다. 귀하의 사이트가 Mac 사용자를 대상으로한다면, 나는'CTRL'로 아무 것도하지 않고 클릭 만하면됩니다. –