My Space

반응형

결론부터 말하면

ajax로 받아온 데이터를 jstl에서 사용하는 것은 불가능하다. 

기본적으로 서버의 작업 순서가 JAVA>JSTL>HTML>JavaScript 이기 때문에 에러가 뜬다.

 

이렇듯 직접적으로 받아와서 사용을 할 순 없고,

ajax에서 받아온 데이터를 다른 jsp에 그려서 그 그려진 jsp를 뿌려주는 방식으로 사용 할 수 있다.

 

요약하면

1. ajax를 사용하는 jsp에서 post방식으로 java에 요청

2. Controller딴에서 ajax요청을 받은 뒤 Service를 통해 비지니스 로직 값을 호출하고 결과 값을 model.addAttribute("", )에 저장 하고 데이터를 그려줄 jsp로 리턴

3. ajax에서 2번에서 그려준 jsp를 결과 값으로 리턴하여 뿌려준다.

 

구현

ajax로 ul태그 안에 비지니스 로직을 통해 가져온 데이터들을 li만큼 뿌려주려고 함

(처음부터 데이터를 뿌려주는 것이 아닌 해당 ul을 선택 했을때 값을 뿌려주기 위함)

 

1. ajax를 사용하는 JavaScript

 

2. Java

3. 데이터를 그려줄 jsp

 

위와 같이 하면 1번째의 ajax result에 3번의 데이터 내용들이 출력이된다.

이 출력된 값을 $("#test").html(result);로 넘겨주면 <ul>태그 아래 3번의 값들이 뿌려진다.

 

이런식으로 ajax로 가져온 값을 직접 jsp에서 뿌려주고 싶을땐, 우회해서 사용 할 수 있다.

'Development > JSP, JS, JQUERY' 카테고리의 다른 글

jsp 내장객체(참고 링크)  (0) 2021.08.16
SPA와 여러 방식  (0) 2021.04.29
use strict(바닐라 js)  (0) 2021.04.19
script의 async와 defer 옵션의 차이  (0) 2021.04.18
JSON 개념 및 활용법(with Visual Studio Code)  (0) 2021.04.18

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading