2013-10-06 3 views
1

컨트롤러 클래스를 사용하여 모델링 할 문자열 목록을 추가하는 메소드를 초기화합니다.스프링 MVC에서 JSP로 객체 전달하기

@RequestMapping(value = "/my-site", method = RequestMethod.GET) 
public ModelAndView doStuff(HttpServletRequest request){ 

    ModelAndView modelAndView = new ModelAndView("do-stuff"); 
     ... 

    List<String> list = Arrays.asList("abc", "cba"); 
    modelAndView.addObject("myList", list); 
    return modelAndView; 
} 

질문 번호 1 : jsp 파일에서 내 목록에 액세스하고 Java 스크립트에서 나중에 어떻게 사용합니까? 여분의 문자를 포함하는 "["CBA, ABC를 "]"나는이 "ABC"와 "CBA" 내가 좋아하는 뭔가를 시도하고있다 :

var myList = []; 
<c:forEach var="entry" items="'${myList}'"> 
     myList.push("${entry}"); 
    </c:forEach> 

을하지만 어떤 이유로 내부 대신 두 가지 요소가 필요없이 객체 myList에. 왜? 내가 뭘 잘못하고 어떻게이 문제를 해결합니까?

질문 번호 2 : 입력 버튼이 있습니다. 나는이 버튼을 원하는

<input type="button" id="executeBtn" name="executeBtn" value="Execute"> 

이벤트를 해고 클릭하고 컨트롤러에 다시 myList 객체를 보낼 수 있습니다. JS면과 컨트롤러 메소드의 예제 메소드를 제공해 주시겠습니까?

고맙습니다.

답변

2

${myList} EL 표현이 인용 된 이유는 무엇입니까? 작은 따옴표

var myList = []; 
<c:forEach var="entry" items="${myList}"> 
    myList.push("${entry}"); 
</c:forEach> 

내가이 버튼을 클릭 화재 이벤트에서 원하는

myList가 더 이상 자바 형태로 존재 컨트롤러없는 다시 myList에 개체를 보내 제거하십시오. myList var 개체에 직렬화 된 형식으로 존재합니다. 양식 객체, 쉼표로 구분 된 목록, JSON, XML 등 웹 응용 프로그램에서 이해할 수있는 형식으로 serialize해야합니다.

+0

고마워요. JS 측에서'myList'를 조작하는 방법을 가르쳐 주시겠습니까? 업데이트 된 객체를 컨트롤러로 다시 보내는 방법. 감사! –