2012-05-11 2 views
2

양식의 모든 요소 값이 변경 될 때마다 공통 이벤트를 실행하려고합니다. 폼 요소의 값을 기반으로 코드를 구현하고 싶습니다.양식의 모든 요소에 대한 공통 이벤트

코드 아래에 글을 쓰고 있지만 onchange 이벤트가 formid에서 작동하지 않습니다.

$("#formid").change(function() { 
    //code 
}); 

or this 

$("#formid").bind("change", function() { 
    //code 
}); 

요소의 값이 변경 될 때마다 양식에서 이벤트를 발생시키는 방법은 무엇입니까?

답변

3

요소의 값이 변경 될 때마다 양식에서 이벤트를 발생시키는 방법은 무엇입니까?

완료 한 것처럼 보입니다. change 이벤트를 form 요소에 바인딩하십시오.

$("form").change(function() { 
    // Some descendant changed. 
}); 

너무 오래 당신이 이벤트의 전파 방해하지 않는,이 작동합니다. 당신이 필요한 모든 양식 변경 이벤트를 바인딩 할 수 있습니다

0

는 문서 또는 양식의 모든 요소를 ​​통해

$('input, select, textarea', $('#formid')).change(function() 
{ 
    //your code here 
}); 
+0

구문을 추가하고 유형을 지정하면 효과가있었습니다. 그러나 형식을 지정하지 않고 작동하지 않은 이유는 여전히 나를위한 수수께끼입니다. 감사! – Sunil

0

루프를 제어하고 처리 함수에 자신의 OnChange 이벤트를 설정합니다. 마찬가지로 :

for (var i = 0; i < yourelements.length; i++) 
yourelements[i].onchange = change; 
0
$(this).toArray().each(function(index, element){ 
    $(element).change(function(){.....}); 

});

이것을 document.ready에 넣으십시오 ...

관련 문제