첨부 그림처럼 유형별로
전체선택,전체해제 하는 방법을 알려주시면 감사하겠습니다.
하단에 일괄수정이 있어 여러모로 유용할것 같아 질문드립니다.
답변 4개
<div class="tbl_head01 tbl_wrap">
<table>
<caption><?php echo $g5['title']; ?> 목록</caption>
<thead>
<tr>
<th scope="col"><?php echo subject_sort_link("it_type1", $qstr, 1); ?>히트<br>상품</a>
<INPUT type=checkbox onclick=chkBox(this.checked)>
</th>
<th scope="col">관리</th>
</tr>
</thead>
<tbody>
<?php for ($i=0; $row=sql_fetch_array($result); $i++) {
$href = G5_SHOP_URL.'/item.php?it_id='.$row['it_id'];
$bg = 'bg'.($i%2);
?>
<tr class="<?php echo $bg; ?>">
<td class="td_code">
<input type="hidden" name="it_id[<?php echo $i; ?>]" value="<?php echo $row['it_id']; ?>">
<?php echo $row['it_id']; ?>
</td>
<td><a href="<?php echo $href; ?>"><?php echo get_it_image($row['it_id'], 50, 50); ?><?php echo cut_str(stripslashes($row['it_name']), 60, "…"); ?></a></td>
<td class="td_chk">
<label for="type1_<?php echo $i; ?>" class="sound_only">히트상품</label>
<input type="checkbox" name="it_type1[]" value="1" id="type1_<?php echo $i; ?>" <?php echo ($row['it_type1'] ? 'checked' : ''); ?>>
</td>
</tr>
<?php
}
if (!$i)
echo '<tr><td colspan="8" class="empty_table"><span>자료가 없습니다.</span></td></tr>';
?>
</tbody>
</table>
</div>
<div class="btn_confirm03 btn_confirm">
<input type="submit" value="일괄수정" class="btn_submit">
</div>
</form>
<script type="text/JavaScript">
function chkBox(bool) { // 전체선택/해제
var obj = document.getElementsByName("it_type1[]");
for (var i=0; i<obj.length; i++) obj[i].checked = bool;
document.getElementById('checked');
}
</script>
이런씩으로 수정하고
전체적으로 체크를 할때는 일괄수정이 되는대
리스트에서 하나씩 수정을 할때면 에러가 생기네요..
제가
<input type="checkbox" name="it_type1[<?php echo $i; ?>]" value="1" id="type1_<?php echo $i; ?>" <?php echo ($row['it_type1'] ? 'checked' : ''); ?>>
이 부분을 밑에 자바이부분때문에
var obj = document.getElementsByName("it_type1[]");
아래처럼 수정후 에러가 잡히네요.
<input type="checkbox" name="it_type1[]" value="1" id="type1_<?php echo $i; ?>" <?php echo ($row['it_type1'] ? 'checked' : ''); ?>>
에러 잡을수 있는 방법을 알려주시면 감사하겟습니다.
아래소스를 사용하니 잘되네요..
<script type="text/JavaScript">
function chkBox(bool) { // 전체선택/해제
var obj = document.getElementsByName("chk[]");
for (var i=0; i<obj.length; i++) obj[i].checked = bool;
document.getElementById('checked').innerHTML= (bool)?'해제':'선택';
}
function revBox() { // 전체반전
var obj = document.getElementsByName("chk[]");
for (var i=0; i<obj.length; i++) obj[i].checked = !obj[i].checked;
}
</script>
<table border=1>
<tr bgcolor=#efefef>
<td><INPUT type=checkbox onclick=chkBox(this.checked)><span id='checked'>선택</span></td>
</tr>
<tr><td><INPUT type=checkbox name=chk[]> 이효리</td></tr>
<tr><td><INPUT type=checkbox name=chk[] > 성유리</td></tr>
<tr><td><INPUT type=checkbox name=chk[] > 이진</td></tr>
<tr><td><INPUT type=checkbox name=chk[] > 옥주현</td></tr>
</table>
<INPUT type=button value="전체반전" onclick=revBox()>
알려주신 페이지내용대로 테스트를 해보왔의나
아무런 반응이 없네요...
답변감사합니다.
답변을 작성하려면 로그인이 필요합니다.