2013-05-11 4 views
0

에 자바 스크립트에서 변수 값을 전달 내가이 다음과 같은 경우이 source 값이 나는 JSP 기능을 전달하는 방법을는 JSP

<select name="dropdown_Source" onchange="call()"> 
    <% for (int i=0 ; i < a1.length; i++) { if (a1[i]==n ull) break; %> 
     <option value="<%=a1[i]%>"> 
      <%=a1[i]%> 
     </option> 
    <% } %> 
</select> 

<script> 
    function call() { 
     var source = document.forms[0].dropdown_source.value; 
     // Now this 'source' value i have to pass to jsp function 
     <% 
      Admin a = new Admin(); //this is class defined 
      a.getResult(source); //but source is not resolved here 
     %> 
    } 
</script> 

? a.getResult() - 함수가 나를 드롭 다운 요소 목록으로 반환하고 그 목록을 다른 <option> 태그로 채워야합니다.

+0

추한 코드 .. JSP로 알지는 못하지만 jsp 서버 측 자바 스크립트 클라이언트 측 때문에 작동하지 않을 것이라고 확신합니다. jsp로 드롭 다운 값을 얻을 수 있다면 .. asp.net으로 값을 얻을 수 있습니다. 내가 자바 스크립트에서 값을 설정하는 드롭 다운. – Mehmet

답변

3

당신은 그렇게 할 수 없습니다. JavaScript는 JSP 페이지가 이미 컴파일 된 후 클라이언트 측에서 실행되고 response으로 브라우저에 전송됩니다.

2

자바 스크립트와 자바 코드를 함께 사용할 수 없습니다. 당신이

<% 
      Admin a = new Admin(); //this is class defined 
      a.getResult(source); //but source is not resolved here 
     %> 

을 수행 할 때이 그 코드 조각이 일반 자바 code.Now 변수 "소스"와 같이 서버 측에서 처리된다는 것을 의미합니다 자바 변수 만 그림으로 올 것이다 자바 스크립트 변수가없는 경우 HTML 페이지 브라우저에로드됩니다. 그래서 그 컴파일 오류.

1

가장 좋은 방법은 자바 스크립트가 실행되면 해당 소스 값을 가져 와서 서버로 AJAX 호출을 처리하고 처리 한 다음 다시 클라이언트로 값을 보내고 드롭 다운을 채우는 것입니다.