"선택하세요"를 추가하고 싶습니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

"선택하세요"를 추가하고 싶습니다. 정보

"선택하세요"를 추가하고 싶습니다.

본문

아래는 js 파일 입니다. "선택하세요"가 처음에 나오지 않고 "서울"이 먼저 나와서
항상 write부분에서 반드시 선택을 해야하는데, 선택을 하지 않고 싶을 때는 어떻게 해야하나요?

감사합니다.


+++++ js 파일++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

var sojaeji = function(sido, gugun, dong) {
var obj = this;
//window.onload = function() {
obj.sido = document.getElementById(sido);
obj.gugun = document.getElementById(gugun);
obj.dong = document.getElementById(dong);
obj.update_sido();
obj.sido.onchange = function() {
obj.update_gugun.apply(obj);
obj.update_dong.apply(obj);
}
obj.gugun.onchange = function() {
obj.update_dong.apply(obj);
}
//}
}

sojaeji.prototype = {
update_gugun : function() {
if (this.gugun == null) return;
var gugun = this[this.sido.value];
this.gugun.innerHTML = "";
for(var i=0; i<gugun.length; i++)
this.gugun.options.add(new Option(gugun[i], gugun[i]));
},
update_dong : function() {
if (this.dong == null) return;
var dong = this[this.sido.value+"->"+this.gugun.value];
this.dong.innerHTML = "";
for(var i=0; i<dong.length; i++)
this.dong.options.add(new Option(dong[i], dong[i]));
},
update_sido : function() {
if (this.sido == null) return;
var sido = this['시도'];
for(var i=0; i<sido.length; i++)
this.sido.options.add(new Option(sido[i], sido[i]));
this.update_gugun();
this.update_dong();
},
 '시도' : ['서울','부산','대구','인천','광주','대전','울산','강원','경기','경남','경북','전남','전북','제주','충남','충북'],
 '서울' : ['강남구','강동구','강북구','강서구','관악구','광진구','구로구','금천구','노원구','도봉구','동대문구','동작구','마포구','서대문구','서초구','성동구','성북구','송파구','양천구','영등포구','용산구','은평구','종로구','중구','중랑구'],
 '부산' : ['강서구','금정구','남구','동구','동래구','부산진구','북구','사상구','사하구','서구','수영구','연제구','영도구','중구','해운대구','기장군'],
 '대구' : ['남구','달서구','동구','북구','서구','수성구','중구','달성군'],
 '인천' : ['계양구','남구','남동구','동구','부평구','서구','연수구','중구','강화군','옹진군'],
 '광주' : ['광산구','남구','동구','북구','서구'],
 '대전' : ['대덕구','동구','서구','유성구','중구'],
 '울산' : ['남구','동구','북구','중구','울주군'],
 '강원' : ['강릉시','동해시','삼척시','속초시','원주시','춘천시','태백시','고성군','양구군','양양군','영월군','인제군','정선군','철원군','평창군','홍천군','화천군','횡성군'],
 '경기' : ['고양시 덕양구','고양시 일산동구','고양시 일산서구','과천시','광명시','광주시','구리시','군포시','김포시','남양주시','동두천시','부천시 소사구','부천시 오정구','부천시 원미구','성남시 분당구','성남시 수정구','성남시 중원구','수원시 권선구','수원시 영통구','수원시 장안구','수원시 팔달구','시흥시','안산시 단원구','안산시 상록구','안성시','안양시 동안구','안양시 만안구','양주시','오산시','용인시 기흥구','용인시 수지구','용인시 처인구','의왕시','의정부시','이천시','파주시','평택시','포천시','하남시','화성시','가평군','양평군','여주군','연천군'],
 '경남' : ['거제시','김해시','마산시','밀양시','사천시','양산시','진주시','진해시','창원시','통영시','거창군','고성군','남해군','산청군','의령군','창녕군','하동군','함안군','함양군','합천군'],
 '경북' : ['경산시','경주시','구미시','김천시','문경시','상주시','안동시','영주시','영천시','포항시 남구','포항시 북구','고령군','군위군','봉화군','성주군','영덕군','영양군','예천군','울릉군','울진군','의성군','청도군','청송군','칠곡군'],
 '전남' : ['광양시','나주시','목포시','순천시','여수시','강진군','고흥군','곡성군','구례군','담양군','무안군','보성군','신안군','영광군','영암군','완도군','장성군','장흥군','진도군','함평군','해남군','화순군'],
 '전북' : ['군산시','김제시','남원시','익산시','전주시 덕진구','전주시 완산구','정읍시','고창군','무주군','부안군','순창군','완주군','임실군','장수군','진안군'],
 '제주' : ['제주시','서귀포시'],
 '충남' : ['계룡시','공주시','논산시','보령시','서산시','아산시','천안시 동남구','천안시 서북구','금산군','당진군','부여군','서천군','연기군','예산군','청양군','태안군','홍성군'],
 '충북' : ['제천시','청주시 상당구','청주시 흥덕구','충주시','괴산군','단양군','보은군','영동군','옥천군','음성군','증평군','진천군','청원군'],
'서울->강남구' : ['개포1동','개포2동','개포4동','개포동','논현1동','논현2동','논현동','대치1동','대치2동','대치4동','대치동','도곡1동','도곡2동','도곡동','삼성1동','삼성2동','삼성동','세곡동','수서동','신사동','압구정동','역삼1동','역삼2동','역삼동','율현동','일원1동','일원2동','일원본동','일원동','자곡동','청담동','무역센터우체국사서함','서울강남우체국사서함','서울영동우체국사서함'],
 '서울->강동구' : ['강일동','고덕1동','고덕2동','고덕동','길동','둔촌1동','둔촌2동','둔촌동','명일1동','명일2동','명일동','상일동','성내1동','성내2동','성내3동','성내동','암사1동','암사2동','암사3동','암사동','천호1동','천호2동','천호3동','천호동','서울강동우체국사서함'],
 '서울->강북구' : ['미아동','번1동','번2동','번3동','번동','삼각산동','삼양동','송중동','송천동','수유1동','수유2동','수유3동','수유동','우이동','인수동','서울강북우체국사서함'],
 '서울->강서구' : ['가양1동','가양2동','가양3동','가양동','개화동','공항동','과해동','내발산동','등촌1동','등촌2동','등촌3동','등촌동','마곡동','방화1동','방화2동','방화3동','방화동','염창동','오곡동','오쇠동','외발산동','우장산동','화곡1동','화곡2동','화곡3동','화곡4동','화곡6동','화곡8동','화곡본동','화곡동','서울강서우체국사서함','서울화곡우체국사서함'],
 '서울->관악구' : ['낙성대동','난곡동','난향동','남현동','대학동','미성동','보라매동','봉천동','삼성동','서림동','서원동','성현동','신림동','신사동','신원동','은천동','인헌동','조원동','중앙동','청룡동','청림동','행운동','서울관악우체국사서함'],
 '서울->광진구' : ['광장동','구의1동','구의2동','구의3동','구의동','군자동','능동','자양1동','자양2동','자양3동','자양4동','자양동','중곡1동','중곡2동','중곡3동','중곡4동','중곡동','화양동','서울광진우체국사서함','동서울우편집중국사서함'],
 '서울->구로구' : ['가리봉동','개봉1동','개봉2동','개봉3동','개봉동','고척1동','고척2동','고척동','구로1동','구로2동','구로3동','구로4동','구로5동','구로동','궁동','신도림동','오류1동','오류2동','오류동','온수동','천왕동','항동','구로디지털단지우체국사서함'],
 '서울->금천구' : ['가산동','독산1동','독산2동','독산3동','독산4동','독산동','시흥1동','시흥2동','시흥3동','시흥4동','시흥5동','시흥동','서울금천우체국사서함'],
 '서울->노원구' : ['공릉1.3동','공릉2동','공릉동','상계1동','상계2동','상계3.4동','상계5동','상계6.7동','상계8동','상계9동','상계10동','상계동','월계1동','월계2동','월계3동','월계동','중계1동','중계2.3동','중계4동','중계본동','중계동','하계1동','하계2동','하계동','서울노원우체국사서함'],
 '서울->도봉구' : ['도봉1동','도봉2동','도봉동','방학1동','방학2동','방학3동','방학동','쌍문1동','쌍문2동','쌍문3동','쌍문4동','쌍문동','창1동','창2동','창3동','창4동','창5동','창동'],
 '서울->동대문구' : ['답십리1동','답십리2동','답십리동','신설동','용두동','이문1동','이문2동','이문동','장안1동','장안2동','장안동','전농1동','전농2동','전농동','제기동','청량리동','회기동','휘경1동','휘경2동','휘경동','동대문우체국사서함','서울청량우체국사서함'],
 '서울->동작구' : ['노량진1동','노량진2동','노량진동','대방동','동작동','본동','사당1동','사당2동','사당3동','사당4동','사당5동','사당동','상도1동','상도2동','상도3동','상도4동','상도동','신대방1동','신대방2동','신대방동','흑석동','서울동작우체국사서함'],
 '서울->마포구' : ['공덕동','구수동','노고산동','당인동','대흥동','도화동','동교동','마포동','망원1동','망원2동','망원동','상수동','상암동','서교동','성산1동','성산2동','성산동','신공덕동','신수동','신정동','아현동','연남동','염리동','용강동','중동','창전동','토정동','하중동','합정동','현석동','서울마포우체국사서함'],
 '서울->서대문구' : ['남가좌1동','남가좌2동','남가좌동','냉천동','대신동','대현동','미근동','봉원동','북가좌1동','북가좌2동','북가좌동','북아현동','신촌동','연희동','영천동','옥천동','창천동','천연동','충정로2가','충정로3가','합동','현저동','홍은1동','홍은2동','홍은동','홍제1동','홍제2동','홍제3동','홍제동','서대문우체국사서함','서울충정로우체국사서함'],
 '서울->서초구' : ['내곡동','반포1동','반포2동','반포3동','반포4동','반포본동','반포동','방배1동','방배2동','방배3동','방배4동','방배본동','방배동','서초1동','서초2동','서초3동','서초4동','서초동','신원동','양재1동','양재2동','양재동','염곡동','우면동','원지동','잠원동','서울서초우체국사서함'],


이하 생략

}
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

위는 js 파일 입니다. "선택하세요"가 처음에 나오지 않고 "서울"이 먼저 나와서
항상 write부분에서 반드시 선택을 해야하는데, 선택을 하지 않고 싶을 때는 어떻게 해야하나요?

감사합니다.


댓글 전체

선택하세요를 추가하시려면 일단
for(var i=0; i<sido.length; i++)  == > for(var i=1; i<=sido.length; i++)
로 바꾸시고

update_sido : function() { 
if (this.sido == null) return; 

var sido = this['시도']; 
sido[0] = "선택하세요";

this.sido.options.add(new Option(sido[0],sido[0]));
for(var i=1; i<=sido.length; i++) 
	this.sido.options.add(new Option(sido[i], sido[i])); 

this.update_gugun(); 
this.update_dong(); 
}, 

요런형태로 모두 바꾸시면 됩니다
대단히 감사합니다. 적용을 했는데 안됩니다. 어디가 문제인지요.

var sojaeji = function(sido, gugun, dong) {
var obj = this;
//window.onload = function() {
obj.sido = document.getElementById(sido);
obj.gugun = document.getElementById(gugun);
obj.dong = document.getElementById(dong);
obj.update_sido();
obj.sido.onchange = function() {
obj.update_gugun.apply(obj);
obj.update_dong.apply(obj);
}
obj.gugun.onchange = function() {
obj.update_dong.apply(obj);
}
//}
}

sojaeji.prototype = {
update_gugun : function() {
if (this.gugun == null) return;

var gugun = this['구군'];
        gugun[0] = "선택하세요";


this.gugun.options.add(new Option(gugun[0],gugun[0]));
for(var i=1; i<gugun.length; i++)
this.gugun.options.add(new Option(gugun[i], gugun[i]));
this.update_gugun();
this.update_dong();
},
update_dong : function() {
if (this.dong == null) return;

var dong = this['동'];
        dong[0] = "선택하세요";

this.dong.options.add(new Option(dong[0],dong[0]));
for(var i=1; i<dong.length; i++)
this.dong.options.add(new Option(dong[i], dong[i]));
this.update_gugun();
this.update_dong();
},
update_sido : function() {
if (this.sido == null) return;
var sido = this['시도'];
sido[0] = "선택하세요";

        this.sido.options.add(new Option(sido[0],sido[0]));
for(var i=1; i<sido.length; i++)
this.sido.options.add(new Option(sido[i], sido[i]));
this.update_gugun();
this.update_dong();
},

// HTML
<select name="wr_10" id="sido1">
<option value="">선택하세요</option>
</select>
<select name="wr_10" id="gugun1">
<option value="">선택하세요</option>
</select>
<select name="wr_10" id="dong1">
<option value="">선택하세요</option>
</select>


// JS
update_gugun : function() { 
    if (this.gugun == null) return;  
=>
update_gugun : function() {
    if (this.gugun == null || this.sido.value == '') return;


update_dong : function() { 
if (this.dong == null) return; 
=>
update_dong : function() {
    if (this.dong == null || this.sido.value == '') return;
슈와이님, 대단히 감사합니다.
그런데, 적용을 했으나 안됩니다.
html 파일을 잘못 했나요.
      <select name="wr_10" id="sido1">
  </select>
      <select name="wr_10" id="gugun1">
  </select>
이렇게 했고요, 스크립트 불러왔으며, 하단에 스크립트 적용 했습니다.
시도; 선택하세요는 나오는데, 구군, 동에는 안나오네요.
한번 더 살펴주시면 대단히 감사하겠습니다.
고맙습니다.
전체 66,554 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT