조건식 다중 셀럭터에서 수정이 안되는 문제입니다
본문
wr_1 필드를 사용해서
과일,채소중 선택한 후 값을 저장하고
조건문으로
과일 일때는 "사과~포도" 중에서 선택 후 wr_2에 저장하고
채소 일때는 "배추~시금치" 중에서 선택 후 wr_2에 저장하고
wr_3는 text값을 입력받는 형식입니다
이렇게 하고 수정을 하려고하니 wr_1은 값을 불러오는데
wr_2의 값을 못불러옵니다
<select id="wr_1" name="wr_1" required class="frm_input required" onChange="wr_1_change(this.value);">
<option value="선택">선택</option>
<option value="과일"<? if($wr_1=="과일") echo" selected"; ?>>과일</option>
<option value="채소"<? if($wr_1=="채소") echo" selected"; ?>>채소</option>
</select>
<select id="wr_2" name="wr_2" required class="frm_input required">
<option value="">없음</option>
</select>
<input type="text" name="wr_3" value="<?php echo $wr_3 ?>" id="wr_3" required class="frm_input required" placeholder="맛">
<script>
function wr_1_change(wr_1) {
var wr_2_Q = "";
if(wr_1 == "과일"){
wr_2_Q += "<option value='사과'<? if($wr_2=="사과") echo" selected"; ?>>빨강 사과</option>";
wr_2_Q += "<option value='배'<? if($wr_2=="배") echo" selected"; ?>>노랑 배</option>";
wr_2_Q += "<option value='포도'<? if($wr_2=="포도") echo" selected"; ?>>보라 포도</option>";
}else if(wr_1 == "채소"){
wr_2_Q += "<option value='배추'<? if($wr_2=="배추") echo" selected"; ?>>가을 배추</option>";
wr_2_Q += "<option value='무'<? if($wr_2=="무") echo" selected"; ?>>고냉지 무</option>";
wr_2_Q += "<option value='시금치'<? if($wr_2=="시금치") echo" selected"; ?>>남해 시금치</option>";
}
$('#wr_2').html(wr_2_Q);
}
</script>
답변 1
테스트해 보지는 못했지만 자바스크립트 부분이 이상해 아래 처럼 수정해 봤습니다.
이것으로 대체후 테스트해 보시죠.
<script>
function wr_1_change(wr_1) {
var wr_2_Q = "";
if(wr_1 == "과일"){
wr_2_Q += "<option value='사과'<?php if($wr_2=='사과') echo 'selected'; ?>>빨강 사과</option>";
wr_2_Q += "<option value='배'<?php if($wr_2=='배') echo 'selected'; ?>>노랑 배</option>";
wr_2_Q += "<option value='포도'<?php if($wr_2=='포도') echo 'selected'; ?>>보라 포도</option>";
} else if(wr_1 == "채소"){
wr_2_Q += "<option value='배추'<?php if($wr_2=='배추') echo 'selected'; ?>>가을 배추</option>";
wr_2_Q += "<option value='무'<?php if($wr_2=='무') echo 'selected'; ?>>고냉지 무</option>";
wr_2_Q += "<option value='시금치'<?php if($wr_2=='시금치') echo 'selected'; ?>>남해 시금치</option>";
}
$('#wr_2').html(wr_2_Q);
}
</script>