특정 입력 상자의 값이 변경 될 때마다 함수를 실행하고 싶습니다. 그것은 거의 작동 $('input').keyup(function)
하지만, 예를 들어, 상자에 텍스트를 붙여 넣을 때 아무 반응이 없습니다. $input.change(function)
입력이 흐려질 때만 트리거되므로 텍스트 상자의 값이 변경 될 때마다 어떻게 즉시 알 수 있습니까?
답변
‘바인딩’기능보다 ‘on’이 권장된다는 점을 기억하십시오. 항상 다음과 같은 이벤트 리스너를 사용하십시오.
$("#myTextBox").on("change paste keyup", function() {
alert($(this).val());
});
답변
기술
jQuery의 .bind()
메소드를 사용하여이를 수행 할 수 있습니다 . jsFiddle을 확인하십시오 .
견본
HTML
<input id="myTextBox" type="text"/>
jQuery
$("#myTextBox").bind("change paste keyup", function() {
alert($(this).val());
});
추가 정보
답변
이것을 시도하십시오 .. https://stackoverflow.com/users/1169519/teemu에 대한 크레딧
내 질문에 대한 답변 : /programming/24651811/jquery-keyup-doesnt-work-with-keycode-filtering?noredirect=1#comment38213480_24651811
이 솔루션을 통해 프로젝트를 진행할 수있었습니다.
$("#your_textbox").on("input propertychange",function(){
// Do your thing here.
});
참고 : IE의 하위 버전에 대한 속성 변경
답변
당신은 또한 텍스트 상자 이벤트를 사용할 수 있습니다-
<input id="txt1" type="text" onchange="SetDefault($(this).val());" onkeyup="this.onchange();" onpaste="this.onchange();" oninput="this.onchange();">
function SetDefault(Text){
alert(Text);
}
답변
이 시도:
기본적으로 각 이벤트를 설명하십시오.
HTML :
<input id = "textbox" type = "text">
jquery :
$("#textbox").keyup(function() {
alert($(this).val());
});
$("#textbox").change(function() {
alert($(this).val());
});
답변
$("#myTextBox").on("change paste keyup select", function() {
alert($(this).val());
});
브라우저 제안을 위해 선택
답변
이 시도:
$("input").bind({
paste : function(){
$('#eventresult').text('paste behaviour detected!');
}
})