multiple select 관련질문

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
multiple select 관련질문

QA

multiple select 관련질문

본문

이렇게 multiple select를 구혔했는데요.

write에서 multiple select를 이용해서 골라서 DB에 넣고

 

수정을 할때 

wr_1~wr_3들의 값들을 나타낼때가 없는데 어떻게 해야될까요?

 <input type="text" name="wr_1" value="<? echo $wr_1;?>"> 

input type text같은 경우는 이렇게 하는데...

select 경우는 

<option value="1" <?if($wr_1=='1'){?>selected<?}?> ?>1</option>

이렇게 하는데 

아래 처음 구현한 것은 어떻게 해야될지 모르겟네요 ㅠㅠ

 


<select id="wr_1" name="wr_1" multiple ></select>
<select id="wr_2" name="wr_2"  multiple ></select>
<select id="wr_3" name="wr_3" multiple ></select>
 
<script type="text/javascript" src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<script type="text/javascript">
function getData(mode) {
	var key1 = $('#wr_1 option:selected').val();
	var key2 = $('#wr_2 option:selected').val();
	$.get('data.php', {mode:mode, key1:key1, key2:key2}, function(data) {
		if (mode == 2) {
			$target = $('#wr_3');
		} else if (mode == 1) {
			$target = $('#wr_2');
		} else {
			$target = $('#wr_1');
		}
		var option = '';
		$.each(data, function (k, v) {
			option = option + '<option value="' + (mode == 2 ? v : k) + '" class="op_s">' + (mode == 2 ? v : k) + '</option>';
		});
		$target.html(option);
	}, 'json');
}
$(function() {
	getData(0);
	$('#wr_1').change(function(e) {
		getData(1);
	});
	$('#wr_2').change(function(e) {
		getData(2);
	});
});
</script>



data.php

$cars['A'] = array(
	'A-A' => array('야호'),
'A-B' => array('이야호')
);
	

if ($_GET['mode'] == 2) {
	echo json_encode($cars[$_GET['key1']][$_GET['key2']]);
} else if ($_GET['mode'] == 1) {
	echo json_encode($cars[$_GET['key1']]);
} else {
	echo json_encode($cars);
}
?>

이 질문에 댓글 쓰기 :

답변 1

trigger 기능을 이용하시면 될 듯 합니다.

대략적으로 아래처럼?

 


// rel 속성에 디비값을 넣는다.
<select id="wr_1" name="wr_1" rel="<?php echo $wr_1; ?>" multiple ></select>
<select id="wr_2" name="wr_2" rel="<?php echo $wr_2; ?>"  multiple ></select>
<select id="wr_3" name="wr_3" rel="<?php echo $wr_3; ?>" multiple ></select>
...
getData(mode){
    ...
    $target.html(option);
    // rel 값이 있으면 selected하고 change이벤트를 발생시킨다.
    if($target.attr('rel') != ''){
        $target.val($target.attr('rel')).trigger('change');
    }
    ...
}
...
답변을 작성하시기 전에 로그인 해주세요.
전체 0
QA 내용 검색

회원로그인

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