인포박스가 생성되지 않아요
업로드 페이지에서 마커를 클릭했을 때 인포박스가 생성되지 않습니다.
여러번 다시 해봤는데 그대로네요.. 무엇이 문제인지를 모르겠어요.
도움 요청합니다ㅠ
upload.js 코드입니다.
const mapContainer=document.getElementById("map");
const mapOption={
center:new daum.maps.LatLng(37.554477,126.970419),
level:3,
};
let map=new daum.maps.Map(mapContainer, mapOption);
let infoWindow = new daum.maps.InfoWindow({
zIndex:1,
});
let markerList=[];
let ps=new daum.maps.services.Places();
searchPlaces();
function searchPlaces(){
let keyword=$("#keyword").val();
ps.keywordSearch(keyword,placesSearchCB);
}
function placesSearchCB(data, status){
if(status===daum.maps.services.Status.OK){
displayPlaces(data);
}else if(status===daum.maps.services.Status.ZERO_RESULT){
alert("검색 결과과 존재하지 않습니다.")
return;
}else if(status===daum.maps.services.Status.ERROR){
alert("검색 결과중 오류가 발생했습니다.")
return;
}
}
function displayPlaces(data){
let listEl=document.getElementById("placesList");
let bounds=new daum.maps.LatLngBounds();
removeAllChildNodes(listEl);
removeMarker();
for(let i=0;i<data.length;i++){
let lat=data[i].y;
let lng=data[i].x;
let address_name=data[i]["address_name"];
let place_name=data[i]["place_name"];
const placePosition=new daum.maps.LatLng(lat,lng);
bounds.extend(placePosition);
let marker=new daum.maps.Marker({
position:placePosition,
});
marker.setMap(map);
markerList.push(marker);
const el=document.createElement("div");
const itemStr=`
<div class="info">
<div class="info_title">
${place_name}
</div>
<span>${address_name}</span>
</div>
`;
el.innerHTML=itemStr;
el.className="item";
daum.maps.event.addListener(marker,"click",function(){
displayInfowindow(marker,place_name,address_name,lat,lng);
});
daum.maps.event.addListener(map,"click",function(){
infoWindow.close();
});
el.onclick=function(){
displayInfowindow(marker,place_name,address_name,lat,lng);
};
listEl.appendChild(el);
}
map.setBounds(bounds);
}
function displayInfowindow(marker,place_name,address_name,lat,lng){
let content=`
<div style="padding:25px;">
${place_name}<br>
${address_name}<br>
<button>onClick="onSubmit('${title}','${address}',${lat},${lng});"등록</button>
</div>
`;
map.panTo(marker.getPosition());
infoWindow.setContent(content);
infoWindow.open(map,marker);
}
function onSubmit(title,address,lat,lng){
$.ajax({
url:"/location",
data:{title,address,lat,lng},
type:"POST",
}).done((response)=>{
console.log("데이터 요청 성공");
alert("성공");
}).fail((error)=>{
console.log("데이터 실패");
alert("실패");
});
}
function removeAllChildNodes(el){
while(el.hasChildNodes()){
el.removeChild(el.lastChild);
}
}
function removeMarker(){
for(let i=0;i<markerList.length;i++){
markerList[i].setMap(null);
}
markerList=[];
}
Câu trả lời 2
0
질문 주셔서 감사합니다:)
혹시 브라우저에서 어떻게 에러가 나는지 메세지를 캡쳐해서 보내주실 수 있나요??
그래야 좀 더 빠르게 답변이 가능할 것 같습니다.~!!
감사합니다~!!
0
안녕하세요 선생님 도와주세요
0
138
1
marker 크기 관련 질문
0
120
0
upload.css 관련 질문
0
106
1
mongoDB 관련 질문
0
154
1
키워드 검색 데이터 받아오기 강의중 문제 발생
0
246
1
404에러가 뜨네요 ㅠㅠ
1
370
1
카카오 api 발급 및 적용중에 upload 페이지가 뜨지를 않아서요.
0
259
1
키 발급 부탁드립니당!!
0
183
0
코드를 다운받을 수 있는 곳이 있나요?
0
208
0
서버 구축
0
304
0
infowindow_wrap부터 css가 적용이 안돼요
0
249
0
화살표 함수 두번 쓰는 이유가 궁금합니다.
3
226
0
이거 좀 너무 "코드보고 따라치세요" 식 아닌가요?
3
244
1
마커 클러스터 내의 텍스트 속성 지정 방법이 궁금합니다.
0
336
1
로딩 속도를 높이는 방법이 궁금합니다.
0
280
1
헉! 저도 회원가입에서 막혔네요
1
210
1
-g로 설치하는 이유가 있나요?
1
190
1
강의 내용 외 문의
0
176
0
마커 기능 질문
1
170
1
script 태그에 있는 클라이언트 아이디가 github에 공개되지 않도록 올리는 방법이 있을까요?
1
430
1
웹 관련 문의
1
256
1
서버접속시 오류가 발생하네요
1
226
2
지도정보 표시
1
347
1
안녕하세요 강사님. ajax관련 질문을 남기고자 합니다.
1
335
1

