2013-03-06 2 views
0

Java의 결과를 기반으로 JSP 페이지에서 '양식'을 채우는 방법을 찾으려합니다. 그래서 여기Java에서 JSP 페이지의 양식 채우기

내 자바 스크립트 코드 :

$('#uSystemList').change(function() { 
    $.get("/live-application/systemById", {systemid: $("#uSystemList").val()}, displayChangedSystemResults, "html"); 
}); 

function displayChangedSystemResults(html){ 
    $('#systemForm').empty(); 
    $('#systemForm').append(html); 
} 

폼 :

<form:form id="systemForm" method="post" action="/live-application/systemSave" commandName="systemForm"> 
<tr> 
    <td valign="top"><form:select path="uSystemList" id="uSystemList"> </form:select> </td> 
</tr> 
<tr> 
    <td valign="top"><form:input path="fSystemName"/></td> 
</tr> 
</form:form> 

그리고 자바 측 : 난 그냥 fSystemName을 채우려 테스트로

@RequestMapping(value = "/systemById", method = RequestMethod.GET) 
public void getSystemById(@RequestParam("systemid") String systemid, OutputStream outputStream) throws IOException { 
    StringBuilder refreshHtml = new StringBuilder(); 
    try { 
     String html = new String(); 
     if (!systemid.equals("")) { 
      System system = service.getSystemById(systemid)); 

      html = html + "<input type='text' value='" + system.getName() + "' id='fSystemName' />"; 
     } 
     refreshHtml.append(hostHtml); 
     outputStream.write(refreshHtml.toString().getBytes()); 
     outputStream.flush(); 
    } catch (Exception e) { 
     outputStream.flush(); 
    } 
} 

입력란의 필드가 있지만 displayChangedSystemResults 함수로 돌아 가면 아무 일도 일어나지 않습니다. 아무도 내가 잘못하고있는 것을 발견 할 수 있습니까?

+0

'형태가 올바른 방향으로 넣어야 누락'/>' –

+0

죄송합니다, 즉이었다 실수가 input' 나는 꽤 많은 코드를 제거했다. 지금 편집 할 것입니다 ... – maloney

답변

0

간단한 방법은 요청 속성 을 표시하려는 값을 JSP에 설정하는 것입니다. 서버 측에서

System system = service.getSystemById(systemid)); 
model.addAttribute("fSystemName", system.getName()); 

그리고 표시 할 수

public void getSystemById(@RequestParam("systemid") String systemid, Model model , OutputStream outputStream) throws IOException { 

그리고 요청 처리 방법에서 봄 모델을 포함하는 방법 서명을 적응 JST 라이브러리를 사용하는 JSP에서 JSTL이 /WEB-INF/lib

편집


<tr> 
<td valign="top"><input type="text" value="${fSystemName}"></input></td> 
    </tr> 
,617에 다음 항아리를 추가 사용하기 위해

당신은 직접의 OutputStream을 처리하지해야하며, 봄하도록해야 2

편집 당신을 위해 그것을 할. 메서드가 이상적으로 view name을 반환해야합니다. 그러면 스프링이 자동으로 해결됩니다.

아래 간단한 튜토리얼을 확인하십시오. select` 어쩌면`>`와 형태 '에 대한 끝나야합니다 :이

Spring 3 MVC Hellow World

+0

답변을 주셔서 감사합니다. JSP 쪽에서 '태그 (양식 : 입력)가 비어 있어야합니다'라고 말합니다. – maloney

+0

감사합니다. 아직 아무 일도 일어나지 않습니다. 예 : 모델로 뭔가를해야합니까? 반환?당신은 void로 메쏘드 리턴 타입을 가지므로, 나는 그것을 '새로 고침'하기 위해서해야 할 일이 있는지 알려주시겠습니까? – maloney

+0

Pls 편집 확인 – Sudhakar