foreach 반복문으로 뿌른 select 박스를 글수정시 선택이 되있게 할려면

foreach 반복문으로 뿌른 select 박스를 글수정시 선택이 되있게 할려면

QA

foreach 반복문으로 뿌른 select 박스를 글수정시 선택이 되있게 할려면

답변 2

본문


<?php
     if ( $w == "u" ) {
     $mem = get_member($write['mb_id']);
    } else{
     $mem = $member;
    }

    $exam_list = "";
    $tmp_str1 = explode("\n",$mem['mb_1']);                    
    foreach($tmp_str1 as $val){                                        
        $exam_list .= "<option value='".$val."'>".$val."</option>";                                
    }#END foreach
?>
    <select id='wr_12' name='wr_12'>
        <option value=''>선택
        <?php echo $exam_list; ?>
    </select>

 

안녕하세요. 

 

글쓰기시 회원의 mb_1 필드에 엔터로 구분되어 저장되어있는 값을 셀렉트박스로 wr_12 필드에 값이 들어오게 하고 있습니다.(wr_12에 값은 저장 잘됩니다. 위 foreach 로 하면)

 

그런데 문제가 글수정시 $write[wr_12]에 맞게 select option이 선택이 되게 해야하는데 마땅한 방법을 찾지를 못하겠네요. 좋은 방법이 있을까요?

 

이 질문에 댓글 쓰기 :

답변 2

해당 페이지 맨 하단에.

<script>

$(document).ready(function(){

$("#wr_12").val("<?php echo $write['wr_12']; ?>");

});

</script>

답변 주셔서 감사합니다. dev님과 블랙캣님이 주신 답변 모두 안되서 여러가지 테스트를 해보았더니 val 값에 쉼표가 들어가는게 문제였네요. 데이터에서 쉼표 없애고.. 제이쿼리를 못쓰는 페이지여서
  if (typeof(wr_12) != "undefined")
        if (w.value == "u")
            wr_12.value = "<?=$write[wr_12]?>";
로 했더니 선택은 잘됩니다. 쉼표 문제는 다시 질의올려야겠습니다.

$exam_list .= "<option value='".$val."'>".$val."</option>";   

해당 부분 위에

$chk = "";

if($val == $write['wr_12']) $chk = "selected";

추가하고

$exam_list .= "<option value='".$val."' ".$chk.">".$val."</option>";   로 변경해보세요

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 104
© SIRSOFT
현재 페이지 제일 처음으로