2017-01-18 3 views
0

나는 그것의 출력을 볼 수도 자바 파일에서 자바 스크립트 함수를 호출 할 수 및 오전어떻게 개찰구

나는 아래의 코드를 사용하여 경고에 무엇입니까하지만 수행에 자바에서 자바 스크립트 함수에서 값을 얻을 수

target.appendJavascript("s=$('#signature').jSignature('getData')"); 
target.appendJavascript("alert(s)"); 

HTML에서 나는 하나의 자바 스크립트 파일을 가져 왔습니다. "jSignature('getData')"이 내부에 있습니다.

jSignature은 실제로 사용자의 서명 값을 반환합니다.

기능의 출력을 저장하는 방법을 알려주세요.

+0

넓은 문맥 컨텍스트 (출처)가 없으면 말하기 어렵다 –

답변

0

target.appendJavaScript() (및 prependJavaScript()도)은 eval()을 통해 실행되므로 결과를 변수에 할당하더라도 평가판의 네임 스페이스로 범위가 지정됩니다.

예를 들어 DOM의 일부 기존 JS 객체에 결과를 "할당"할 수 있습니다. window.myVar = ....

Ajax 호출이 완료되면 window.myVar을 사용할 수 있습니다. Ajax 호출은 비동기 적이기 때문에 콜백이 완료되면이를 알리기 위해 콜백 (성공, 실패, 완료)을 사용해야 할 수도 있습니다.

+0

숨겨진 필드 변수 중 하나에 필요한 값 (출력)을 지정하고 있지만 개찰구에서 가져 오는 방법을 모르겠습니다. –

+0

댓글을 달았습니다. 제발 문구를 다시 써주세요. –

+0

내 HTML에는 숨겨진 필드 하나와 해당 ID가 나와 있습니다. 제출 버튼의 Onclick $ ('# signature') .jSignature ('getData') 함수를 호출하고 그 출력을 숨겨진 필드에 지정합니다. 양식 (arg1)을 사용하여이 숨겨진 파일에 대한 나의 가치를 얻을 수있는 방법이 있습니까? 코드는 다음과 같습니다 @Override protected void onSubmit (AjaxRequestTarget target, Form arg1) { /// 숨겨진 필드 값을 얻기위한 코드입니다. } –