채택완료

자바스크립트로 <tr> 을 display = "block"; 또는 display = "none"; 으로 제어하려고 합니다.

2017-03-15 (수) 17:50:07 8,597

자바스크립트로 <tr> 을 display = "block"; 또는 display = "none"; 으로 제어하려고  합니다.

아래와 같이 코딩했는데,,,제가 놓치는 것이 있는지 안되는 이유가 뭘까요,,

아시는 분 답변주시면 감사하겠습니다.

 

Copy
<SCRIPT LANGUAGE="JavaScript">function show() { var  a = this.document.getElementById("layer"); if(document.goodsForm.consult.checked == true) {  a.style.display = "block";      } else {  a.style.display = "none"; }}</SCRIPT> <form name="goodsForm"><p><input name="consult" type="checkbox" value="1" onClick='show()'>상담신청하시겠습니까?</p>		 <tr id='layer' style="display:none;">            <td>				<input type="checkbox" name="it_origin" value="1" id="item2" <?php echo ($it['it_origin']) ? "checked" : ""; ?>> 네 지금 신청합니다.			</td>        </tr></form>

답변 3개

채택된 답변
+20 포인트

var  a = this.document.getElementById("layer");

---> 뜬금없는 this 삭제

var  a = document.getElementById("layer");


table태그 시작과 끝을 넣으세요

<table>

<tr ~~

</tr>

</table>

2017-03-15 (수) 19:08:28

소스상 맞는 것 같긴 한데, 디버깅 한번 해보시면 바로 답 나오지 않을까요?

일단 조건문 안에 console.log 찍어보시고 안되면 checked 가 제대로 안된거고,

console.log 찍히면 a.style.display = "block"; 이 부분이 잘못된거고,

a 변수 console.log 로 찍어보시고... 제대로 셀렉트 된건지도...

2017-03-15 (수) 18:00:04
제이쿼리로 간단하게 해결하세요!
참조사이트 http://martian36.com/1079

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