2010-07-21 3 views
4

내가 자바 스크립트 함수 호출 두 가지 매개 변수를 소스와 대상 소요 moveItem 말하길.매개 변수를 사용하여 javascript-delegate를 호출하는 방법은 무엇입니까?

각기 다른 소스 및 대상을 가진 여러 버튼의 클릭 이벤트에이 기능을 할당하려고합니다. 나는 이런 식으로 뭔가 할 것 매개 변수가없는 있도록

확인 :이 보이지 않는다

function moveItem(source, destination) { 
... 
} 

가 작동 :

$('#myButton1').click(moveItem); 

function moveItem() { 
... 
} 

그러나 무엇을 moveItem은 다음과 같습니다 경우

$('#myButton1').click(moveItem('foo','bar')); 

답변

6

원하는대로 할 수 없습니다. 당신은 moveItem를 호출하는 익명 함수를 사용해야합니다 : 이벤트에 대한 기능을 등록 할 때

$('#myButton1').click(function(){ moveItem('foo','bar'); }; 

은 함수 서명 (클릭 기능의 코드가 핸들러를 호출하기 때문에) 지원 서명 중 하나와 일치해야합니다. moveItem이 일치하지 않으므로 일치하는 익명의 함수로 묶어야합니다.

1

당신은

$('#myButton1').click(function() {moveItem('foo','bar')}); 
1
을 수행 할
관련 문제