2. 게시판 여분필드와 자바스크립트 : radio
먼저 1편 https://sir.kr/g5_tip/20120 을 꼭 읽으시기 바랍니다.
여분필드를 라디오 버튼으로 사용할 때는 보통 아래의 코드를 사용합니다.
[code]
<input type="radio" name="wr_2" value="하나"<?php echo ($write['wr_2'] === "하나") ? " checked" : ""; ?>> 하나
<input type="radio" name="wr_2" value="둘"<?php echo ($write['wr_2'] === "둘") ? " checked" : ""; ?>> 둘
<input type="radio" name="wr_2" value="셋"<?php echo ($write['wr_2'] === "셋") ? " checked" : ""; ?>> 셋
[/code]
----------
이걸 자바스크립트로 표현하면 아래처럼 됩니다. 저는 for of 반복문 처리하였습니다.
DOMContentLoaded 로 상단에서 표현하는 방법은 1편 링크를 보고 참고하세요.
[code]
<input type="radio" name="wr_2" value="하나"> 하나
<input type="radio" name="wr_2" value="둘"> 둘
<input type="radio" name="wr_2" value="셋"> 셋
.
.
.
<script>
for (i of document.querySelectorAll("input[name='wr_2']")) i.checked = i.value === "<?php echo $write['wr_2']; ?>";
</script>
[/code]
----------
write.skin.php 를 건드리지 않고 pc basic 스킨의 write.tail.skin.php 에서 표현하려면 아래처럼요.
태그소스가 길고 칸띄우기까지 들어갔으므로 모던 js 인 역따옴표 변수(여기서는 wrRadio_2)를 하나 만들어서 태그를 담아두는 것이 편합니다.
역따옴표 변수를 쓰면 변수안에 외따옴표나 쌍따옴표도 맘대로 쓸 수 있기 때문에 따옴표 문제로 코드가 실행이 안 되는 걸 경험해 본 분이라면 아마도 만세를 부를 것입니다.
저도 비교적 최근부터 사용하기 시작했구요.
[code]
<script>
wrRadio_2 = `
<input type="radio" name="wr_2" value="하나"> 하나
<input type="radio" name="wr_2" value="둘"> 둘
<input type="radio" name="wr_2" value="셋"> 셋
`;
document.querySelector("#bo_w .bo_w_tit").insertAdjacentHTML("afterend", wrRadio_2);
for (i of document.querySelectorAll("input[name='wr_2']")) i.checked = i.value === "<?php echo $write['wr_2']; ?>";
</script>
[/code]

위와 같이 훌륭(?)하게 만들어졌습니다.
댓글 6개
게시판 목록
그누보드5 팁자료실
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 2065 | 3년 전 | 3846 | ||
| 2064 | 3년 전 | 2714 | ||
| 2063 | 3년 전 | 4016 | ||
| 2062 | 3년 전 | 5447 | ||
| 2061 | 3년 전 | 2335 | ||
| 2060 | 3년 전 | 2647 | ||
| 2059 | 3년 전 | 3247 | ||
| 2058 | 3년 전 | 3737 | ||
| 2057 |
Marshmellow
|
3년 전 | 2769 | |
| 2056 |
mitco
|
3년 전 | 1937 | |
| 2055 |
|
3년 전 | 2484 | |
| 2054 | 3년 전 | 2234 | ||
| 2053 | 3년 전 | 2116 | ||
| 2052 | 3년 전 | 3400 | ||
| 2051 | 3년 전 | 4378 | ||
| 2050 | 3년 전 | 3728 | ||
| 2049 | 3년 전 | 2954 | ||
| 2048 | 3년 전 | 3070 | ||
| 2047 | 3년 전 | 3294 | ||
| 2046 | 3년 전 | 2852 | ||
| 2045 | 3년 전 | 2461 | ||
| 2044 | 3년 전 | 3107 | ||
| 2043 | 3년 전 | 3541 | ||
| 2042 | 3년 전 | 2909 | ||
| 2041 | 3년 전 | 4123 | ||
| 2040 | 3년 전 | 2535 | ||
| 2039 | 3년 전 | 5585 | ||
| 2038 | 3년 전 | 3844 | ||
| 2037 | 3년 전 | 5322 | ||
| 2036 |
sIr어드밈
|
3년 전 | 3384 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기