namxjung
30
2021-04-16 04:23:15
0
82

controller에서 addAttribute를 통해 jsp로 전달된값을들 javascript만있는 파일로 전달하고싶습니다.



순차적으로 위의 컨트롤러에서 addAttribute를 통해 다음 jsp파일에 db에 있는값들을 출력되게하고 해당값을 클릭하면

해당값이 마지막의 카카오 지도 api인데요 그 지도 api의 주소부분에 전달받은 값을 넣어서 클릭하면 지도가 전달받은 값의 위치를 지정할수있도록 구현할려고 하는데

아무래도 controller -> jsp -> javascript 각각의 페이지로 전달받은 값을 이동시키는게 너무어렵네요 피드백부탁드립니다. 




	@RequestMapping(value="/list",method = RequestMethod.GET)
	public String list(Model model) {
		List<TestVo> list = myTestService.list();
		System.out.println(list);
		model.addAttribute("list", list);
		return "list";
	}
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>리스트</title>
</head>
<body>
	<form id = "addlist">
	<c:forEach var="list" items="${list}">
		<a href = "map2">"${list.address}"><br></a>			
	</c:forEach>
	</form>

</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>주소로 장소 표시하기</title>
    
</head>
<body>
<p style="margin-top:-12px">
    <em class="link">
        <a href="javascript:void(0);" onclick="window.open('http://fiy.daum.net/fiy/map/CsGeneral.daum', '_blank', 'width=981, height=650')">
            혹시 주소 결과가 잘못 나오는 경우에는 여기에 제보해주세요.
        </a>
    </em>
</p>
<div id="map" style="width:100%;height:350px;"></div>

<script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=79468ad39b71fca50c6882133843ce98&libraries=services"></script>
<script>
var mapContainer = document.getElementById('map'), // 지도를 표시할 div 
    mapOption = {
        center: new kakao.maps.LatLng(33.450701, 126.570667), // 지도의 중심좌표
        level: 3 // 지도의 확대 레벨
    };  

// 지도를 생성합니다    
var map = new kakao.maps.Map(mapContainer, mapOption); 

// 주소-좌표 변환 객체를 생성합니다
var geocoder = new kakao.maps.services.Geocoder();




// 주소로 좌표를 검색합니다
geocoder.addressSearch(jsp에서 값을 전달받아 들어갈부분..., function(result, status) {

    // 정상적으로 검색이 완료됐으면 
     if (status === kakao.maps.services.Status.OK) {

        var coords = new kakao.maps.LatLng(result[0].y, result[0].x);

        // 결과값으로 받은 위치를 마커로 표시합니다
        var marker = new kakao.maps.Marker({
            map: map,
            position: coords
        });

        // 인포윈도우로 장소에 대한 설명을 표시합니다
        var infowindow = new kakao.maps.InfoWindow({
            content: '<div style="width:150px;text-align:center;padding:6px 0;">우리회사</div>'
        });
        infowindow.open(map, marker);

        // 지도의 중심을 결과값으로 받은 위치로 이동시킵니다
        map.setCenter(coords);
    } 
});    
</script>
</body>
</html>



0
  • 답변 0

  • 로그인을 하시면 답변을 등록할 수 있습니다.