2014-12-23 2 views
2

버튼을 클릭하면 클라이언트 측 JavaScript에서 함수를 호출하고 있습니다.XPages csjs가 변수를 함수로 전달합니까?

doIt("TEST"); 

"TEST"는 내 XPage의 레이블 ID입니다. 함수에서 ID로 전달한 변수를 사용하고 싶습니다. 뭔가 같이 :

function doIt(item){ 
alert(dojo.query("[id$=':item']").innerHTML); 
} 

또는

function doIt(item){ 
val = XSP.getElementById("#{id:item}").innerHTML; 
alert(val); 
} 
나는 또한 정의되지 않은주는이, 사용하여 시도했다

:

val = dojo.query("[id$=':" + item + "']").innerHTML; 
alert(val); 

를 열심히 코드 그래서 같은 ID 이름, 나는 얻을 경우 ID가 "TEST"인 요소의 innerHTML을 수정하십시오.

val = XSP.getElementById("#{id:TEST}").innerHTML; 
alert(val); 

전달 된 변수를 사용하는 매우 간단한 코드 줄을 쓰려고 할 때 구문이 잘못되었습니다.

답변

1

가장 쉬운 방법은 전체 ID로 함수를 호출하는 것입니다

doIt("#{id:Test}") 

하고 버튼에서 "onclick을"클라이언트 이벤트에 함수

function doIt(item){ 
    alert(dojo.byId(item).innerHTML); 
} 
0

에서 사용하는, (XPage 또는 CC 내부에서) 클라이언트 ID를 계산할 수 있으므로 다음과 같이 입력해야합니다.

doIt("#{id:Test}"); // << "#{id:Test}" is computed in the server-side and the final client ID is sent to the browser 

Th en, cjs 라이브러리 (cjs 라이브러리는 클라이언트에 보내기 전에 "evaluate"되지 않으므로 "# {id : Test}"표현식을 사용할 수 없습니다.)

관련 문제