php for문 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 $item_option['io_price']?>" 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 $item_option['io_id']?>','<?php echo $item_option['io_price']?>')">수정</button>
<button type="button" class="btn-outline-danger" onclick="del('<?php echo $item_option['io_no']?>','<?php echo $item_option['io_id']?>')">삭제하기</button>
<?php }
?>
function set(set_io_no ,set_io_id,set_io_price){
set_io_id = document.getElementById("#set_io_id_<?php echo $j;?>");
//숫자가 1추가되어서 못찾음
set_io_price = document.getElementById("#set_io_price_<?php echo $item_option['io_price']?>");
// $item_option['io_price'] 가 null이나옴
console.log(set_io_no,set_io_id,set_io_price);
}
이렇게 for문을 돌려서 리스트들이 나옵니다. 근데 수정을해야하는데 script에서 value를 못찾고 몇번째의 있는 리스트인지 못찾는것같습니다 제발 도와주세요ㅠㅠ
!-->!-->답변 4
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>
예를 들면 이런식으로 하시면 되실듯합니다
잘못된 소스를 올리는것보다
어떠한 기능을 어떻게 작동하며 어떤 값이 들어가게 하고 싶은데
현재 상태가 어떤 상태이다
이정도의 구체적인 내용이 필요합니다.
스크립트 오류의 경우 이전 실행 코드에서 오류가 나기도 하니까요.
php 변수를 script 안에 넣을거면
저 함수 script 를 php for문 안에다 넣으셔유
function set()
가 php loop 안에 들어가 있게 되면
중복으로 정의?하게 되지 않나요?