2009-10-27 3 views
0

TEXT 형식의 INPUT 요소가 있고 INPUT의 값이 기본값과 같지 않을 때마다 작업을 수행하려고합니다. 어떻게해야합니까? jQuery의 "change"이벤트 핸들러를 살펴 보았지만 SELECT 요소에서만 작동합니다.변경시 INPUT 요소의 값을 확인하는 방법은 무엇입니까?

<input type="text" name="test" value=\"Default..\" /> 

$('input[name=test]').FireWhenValueIsChangedThroughTyping() { 
if (value!='Default..') { DoStuffHere(); } 
} 

답변

2

당신이 사용할 수있는 keydown function :

$('input[name=test]').keydown(function() { 
if (value!='Default..') { DoStuffHere(); } 
}); 
당신은 아마뿐만 아니라 change에 바인딩 할

(이 수행 텍스트 입력을위한 작업 -이 흐림에 발생) 예를 들어 마우스를 사용하여 붙여 넣을 수 있습니다.

0

당신은 그의 blur 이벤트를 사용할 수 있습니다 : 어쨌든, 여기

예 .. 내가하고 싶은 것입니다. 사용자가 입력에서 멀어 질 때 트리거됩니다. 사용자가 입력 할 때 트리거가 필요한 경우 keypress 이벤트를 사용하십시오. (링크 된 페이지의 예 탭을 참조하십시오.)

0

$ .fn 같은 솔루션 :

$.fn.FireWhenValueIsChangedThroughTyping = function(defaultvalue){ 
$(this).keydown(function(){ 
    if(this.value != defaultvalue){ 
    //DoStuffHere 
    } 
}); 
}; 
관련 문제