2009-03-11 3 views
0

일부 자바 스크립트로 변환 나는 다음과 같은 JQuery와

link.NavigateUrl = string.Format("javascript:MyFunction({0}, {1});", ID1, ID2); 
그렇게 약간의 자바 스크립트 코드가 있습니다.

을 어떻게 이러한 PARAMS에 전달할 수 있습니다 다음과 같이 JQery를 사용하십시오 :

 
$(function(){ 
    $('#MyLinksID').click(function(){ 
     console.log('Want to have access the two params here');
});

어떻게하면 내 클릭 이벤트 내에서 매개 변수에 액세스 할 수 있습니까?

답변

0

MyFunction을 호출하고 JQuery 클릭 이벤트 내의 매개 변수에 액세스하려는 경우 가장 쉬운 방법은 링크의 href를 파싱하는 것입니다. 이 같은

뭔가 (당신의 jQuery 클릭 이벤트 내부에서) 작동합니다 :

var href = this.href; 
var startPos = href.indexOf("(") + 1; 
var endPos = href.indexOf(")"); 

var parms = href.substr(startPos, endPos - startPos).split(","); 
3

당신은 '폐쇄', 자바 스크립트의 중심 개념을 사용해야합니다.

즉, 함수는 변수가 작성된 범위에있는 변수에 액세스합니다.

$(function(){ 
    var ID1 = 'foo'; 
    var ID2 = 'bar'; 
    $('#MyLinksID').click(function(){ 
     console.log(ID1+ID2); 
    } 
}); 

ID1과 ID2 변수는 콜백 함수에서 만든 동일한 범위에있는, 그래서 나중에 호출 될 때 여전히 액세스 할 수 있습니다.

0

문제는 참조중인 #MyLinksID의 클릭 이벤트가 NavigateUrl 속성에 연결되어 있지 않다는 것입니다. 두 사람이 2 가지 대답에 대답 할 때 질문을 명확히해야합니다.