Map API 사용 에러, 키워드검색후 목록 표시하기 질문드립니다

현재 키워드검색 샘플을 활용하여 지도 로드시

<%
//String keyword = request.getParameter(“keyword”);
String keyword = “김밥”;

%>

	<div id="menu_wrap" class="bg_white">
		<div class="option">
			<div>
				<input type="hidden" name="keyword" value="<%=keyword%>">
				<form onsubmit="searchPlaces(); return false;">
					키워드 : <input type="text" value="<%=keyword%>" id="keyword"
						size="15">
						<% System.out.println("mapSms.jsp keyword : " + keyword);%>
					<button type="submit">검색하기</button>
				</form>
			</div>
		</div>
		<hr>
		<ul id="placesList"></ul>
		<div id="pagination"></div>
	</div>
</div>
<script type="text/javascript"
	src="//dapi.kakao.com/v2/maps/sdk.js?appkey=46af2b83f0b0d49cc01f795dedb0bab7&libraries=services"></script>
<script type="text/javascript" src="js/kakao.js"></script>
<script type="text/javascript" src="js/mapsms.js"></script>

---------------------------mapsms.js 일부----------------------------
searchPlaces();

// 키워드 검색을 요청하는 함수입니다
function searchPlaces() {
var keyword = document.getElementById(‘keyword’).value;

if (!keyword.replace(/^\s+|\s+$/g, '')) {
    alert('키워드를 입력해주세요!');
    return false;
}
// 옵션 설정
options = {
	size : 6,
	page : 3,
	sort: kakao.maps.services.SortBy.DISTANCE,
	location : locPosition,
};
// 장소검색 객체를 통해 키워드로 장소검색을 요청합니다
ps.keywordSearch(keyword, placesSearchCB, options);

}

에러 내용:Failed to load resource: the server responded with a status of 500 (Internal Server Error) dapi.kakao.com/v2/local/search/keyword.json?query=김밥&page=3&size=6&sort=distance:1

input 태그안에 들어간 keyword를 mapsms.jsl 에서 받아 키워드 검색을 실행하도록 해놨는데 처음 페이지 실행시 위와같이 에러가 뜨면서 실행되지 않습니다.
그런데 페이지 로드후 검색창엔 keyword값이 입력된 상태이고 로드 후 검색하기 버튼을 누르면 에러 없이 잘 실행이 됩니다.

제가 원하는건 실행시 검색하기 버튼을 누르지 않고도 바로 검색된 결과가 나온
화면이 나오는건데
저 에러 코드를 봐도 무슨 문제인지 잘 모르겠습니다…도와주세요

locPosition 이 어떤 값을 가지고 있을까요?

geolocation으로 현재 위치를 가져와서 전역변수로 선언한 locPosition에 담아놓았습니다

문서에는 kakao.maps.LatLng 객체를 생성하여 담는 것으로 되어 있습니다.
확인하시고 수정해 보세요.

onload= function() 으로 해결했습니다

1개의 좋아요