내 눈이 파손되어이 질문은 키보드 이벤트에만 적용됩니다.keypress 이벤트 대 클릭 이벤트
나는이 같은 버튼에 클릭 이벤트에 대한 핸들러를 정의 할 때 : 나는 내가 대부분의 웹 어플리케이션은 HTML을 실행하는 클릭 이벤트를 사용할 생각 (마우스를 사용할 수 없기 때문에
$("#button").on("click", function() {
alert("clicked");
});
요소), 나는이 이벤트를 버튼으로 가서 enter를 눌러 테스트했다. 이벤트가 성공적으로 시작되었습니다. 그 이후로 엔터 키를 누르면 html 요소에 대한 클릭 이벤트를 시뮬레이트한다고 믿게되었습니다. 나는 많은 시간을 제출 버튼을 실행했기 때문에 그것이 사실이라고 믿을 이유가 없다.
이제는 액세스 할 때 값으로 채워야하는 텍스트 상자를 만듭니다. 이렇게 했어.
$("#text").on("click", function() {
alert("clicked");
});
그러나 입력을 누르면 더 이상 값이 표시되지 않습니다. 그러나 다른 사람이 마우스를 사용하여 요소를 클릭하면 이벤트가 성공적으로 발생합니다. 나는 JQuery와 - UI의 자동 완성 기능을 사용하고
: 여기
내가 일하고 코드입니다. 사용자가 텍스트 상자에 들어가면 텍스트 상자를 채우고 싶습니다. 나는 내부로 들어가기 위해 엔터를 누른다.$("#tags").autocomplete({
source: names,
minLength: 0,
select: function(event, ui) {
var index = names.indexOf($(this).prop("value"));
$(this).val("");
$("#selected").append("<li>"+names[index]+
"<input type='hidden' id='id' value='"+ids[index]+"'/>"+
"<a href=''>remove</a></li>");
ids.splice(index, 1);
names.splice(index, 1);
return false;
}
}).on("click", function(event) {
$(this).autocomplete("search", $(this).val());
});
정말로 enter와 mouse click의 차이점은 무엇입니까? 어떻게해야합니까?
나는 이것이 버튼과 같은 클릭 가능한 요소에 대해 사실이라고 믿지만, 텍스트 상자에서는 입력이 다른 의미, 즉 리턴을 갖는다. 또한 스페이스 바를 클릭하는 대신 사용할 수 있습니다. – Mouser
제출 버튼은 '기본'상태이며, 사용자가에 도달하면 '클릭'됩니다. '제출'버튼을 추가하면 예상대로 작동합니다. –
allnodcoms