테스트 사이트 - 개발 중인 베타 버전입니다

php for문 getElementById 구하기 채택완료

dudqls 2년 전 조회 6,520

</p>

<p><?php</p>

<p> for($j=0; $item_option = sql_fetch_array($find_option); $j ++ ){</p>

<p>                ?>              </p>

<p> <input type="hidden" class="form-control" name="set_it_id" id="set_it_id" ></p>

<p><div class="input_wrap"></p>

<p><label for="">옵션 / 추가(<?php echo $j ;?>)</label></p>

<p><input type="text" class="set form-control" name="set_io_id" id="set_io_id_<?php echo $j;?>" value="<?php echo $item_option['io_id']?>" ></p>

<p><input type="text" class="set form-control" name="set_io_price" id="set_io_price_<?php echo $item_option['io_price']?>" value="<?php echo $item_option['io_price']?>"</p>

<p>oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');" /></p>

<p></div></p>

<p><button type="button" class="btn-outline-primary" onclick="set('<?php echo $item_option['io_no']?>','<?php echo $item_option['io_id']?>','<?php echo $item_option['io_price']?>')">수정</button></p>

<p><button type="button" class="btn-outline-danger" onclick="del('<?php echo $item_option['io_no']?>','<?php echo $item_option['io_id']?>')">삭제하기</button></p>

<p><?php }</p>

<p> ?></p>

<p>

</p>

<p> function set(set_io_no ,set_io_id,set_io_price){</p>

<p> set_io_id = document.getElementById("#set_io_id_<?php echo $j;?>");</p>

<p>//숫자가 1추가되어서 못찾음 </p>

<p>set_io_price = document.getElementById("#set_io_price_<?php echo $item_option['io_price']?>");</p>

<p> // $item_option['io_price'] 가 null이나옴</p>

<p>        console.log(set_io_no,set_io_id,set_io_price);</p>

<p>    }</p>

<p>

이렇게 for문을 돌려서 리스트들이 나옵니다. 근데 수정을해야하는데 script에서 value를 못찾고 몇번째의 있는 리스트인지 못찾는것같습니다 제발 도와주세요ㅠㅠ

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

답변 4개

채택된 답변
+20 포인트
A
2년 전

getElementById() 에 # 사용하셨는데, 사용 하실 필요 없으시구요. 

 

<?php
for($j = 0; $item_option = sql_fetch_array($find_option); $j++) {
    ?>              
    <input type="hidden" class="form-control" name="set_it_id" id="set_it_id">
    <div class="input_wrap">
        <label for="">옵션 / 추가(<?php echo $j; ?>)</label>
        <input type="text" class="set form-control" name="set_io_id" id="set_io_id_<?php echo $j; ?>" value="<?php echo $item_option['io_id']; ?>">
        <input type="text" class="set form-control" name="set_io_price" id="set_io_price_<?php echo $j; ?>" value="<?php echo $item_option['io_price']; ?>" oninput="this.value = this.value.replace(/[^0-9.]/g, '').replace(/(\..*)\./g, '$1');" />
    </div>
    <button type="button" class="btn-outline-primary" onclick="set('<?php echo $item_option['io_no']; ?>', '<?php echo $j; ?>')">수정</button>
    <button type="button" class="btn-outline-danger" onclick="del('<?php echo $item_option['io_no']; ?>', '<?php echo $item_option['io_id']; ?>')">삭제하기</button>
<?php
}
?>

<script>
function set(set_io_no, index) {
var set_io_id = document.getElementById("set_io_id_" + index);
var set_io_price = document.getElementById("set_io_price_" + index);

}
</script>

 

예를 들면 이런식으로 하시면 되실듯합니다

로그인 후 평가할 수 있습니다

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

function set()

가 php loop 안에 들어가 있게 되면

중복으로 정의?하게 되지 않나요?

로그인 후 평가할 수 있습니다

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

cuwaaang
2년 전

php 변수를 script 안에 넣을거면

저 함수 script 를 php for문 안에다 넣으셔유

로그인 후 평가할 수 있습니다

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

잘못된 소스를 올리는것보다

 

어떠한 기능을 어떻게 작동하며 어떤 값이 들어가게 하고 싶은데

현재 상태가 어떤 상태이다

 

이정도의 구체적인 내용이 필요합니다.

스크립트 오류의 경우 이전 실행 코드에서 오류가 나기도 하니까요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

d
dudqls
2년 전
set_io_id 와 set_io_price 를 input text로 수정 후 수정버튼을 누르면 ajax.php 로 보내기 전 test를 해보니 value를 구하지 못하더군요 아마 순서를 인지하지 못해 구하지 못하는것으로 생각하고있습니다.

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

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

로그인