채택완료

선택에 따라

2018-10-01 (월) 21:01:13 2,081

div 달리 나오는건데요....


    <style>
.inv {
    display: none;
}
    </style>

        <select id="target">
            <option value="">상품선택</option>
            <option value="content_1">1번 상품</option>
            <option value="content_2">2번 상품</option>
            <option value="content_3">3번 상품</option>
        <select>

        <div id="content_1" class="inv">Content 1</div>
        <div id="content_2" class="inv">Content 2</div>
        <div id="content_3" class="inv">Content 3</div>

        <script>
            document
                .getElementById('target')
                .addEventListener('change', function () {
                    'use strict';
                    var vis = document.querySelector('.vis'),   
                        target = document.getElementById(this.value);
                    if (vis !== null) {
                        vis.className = 'inv';
                    }
                    if (target !== null ) {
                        target.className = 'vis';
                    }
            });
        </script>
 

------------------------------------------------------------------

div1, 2, 3~15까지 선택에 따라 

        <div id="content_1" class="inv"> <input type=text name="item[]"  value="<?php echo $item[$i]; ?>" >   </div>

예를 들어 div3을 선택하면 인풋속 value값 <?php echo $item[$i]; ?>" > 도

어떻게 하면 <?php echo $item[3]; ?>이 되게 할 수 있을까요?

        <div id="content_3" class="inv"> <input type=text name="item[]"  value="<?php echo $item[3]; ?>" >   </div>

|

답변 1개 / 댓글 1개

채택된 답변
+20 포인트

php 값을 javascript 배열로 만들어서..

전환시에 그 배열값을 넣어주면 됩니다.

답변에 대한 댓글 1개

2018-10-02 (화) 00:24:26
이렇게 했더니 되긴 되는데

div가 15개가 출력되네요,,,ㅋ

<?php for($k=0; $k<15; $k++) {?>
<div id="content_<?= ($k) ?>" class="inv">

<div style=" border:1px solid red; padding:10px; width:98%">

<input type="text" name="item[]" id="item<?= ($k) ?>" value="<?=$item[$k]?>" >

</div>


</div>

<?php } ?>

답변을 작성하려면 로그인이 필요합니다.