름름
폼태그 input 에서 id와 name 본문
PHPSchool 지앤미님의 글을 퍼왔습니다.
http://phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=62075&cwin=#c_62183
송효진님의 댓글 처럼, 저 또한 <form id="myform"> 에만 아이디를 준 후, document.getElementById('myform').a.value 식으로 접근 하는 방식이 좋은 듯 합니다.
원문
--------------------------------------------------------------------------------------------
위와 같은 태그가 있다고 합시다.
<p><input /></p>
위 태그는 XHTML 1.0 Strict 유효성을 통과할까요?
네. 통과합니다.
다 아시는지 모르겠지만,
저는 input 태그에는 적어도 name은 필수인줄 알았습니다.
그런데 그렇지 않군요.
자바스크립트에서 getElementById를 사용하기 위해서는
각 input 태그에 id를 넣어 주어야 합니다.
그래서 일반적으로 input 태그에는
name 값과 동일한 id값을 넣어주게 마련입니다.
예를 들면, 아래와 같이 말입니다.
<input type="text" name="pw" id="pw" />
그런데, 예를 들어 checkbox인 경우에는
때로, UI를 위한 기능만 필요할 수도 있습니다.
<input type="checkbox" name="chk" id="chk" />
쉽게 말해, $_POST['chk']라는 값이 폼값으로 넘어갈 필요는 없다는 것이지요.
이럴 땐, name을 굳이 쓸 필요가 없습니다.
아래와 같이 해도 실제 사용 및 유효성검사에 걸리지 않지요.
<input type="checkbox" id="chk" />
오히려 쓸 데 없이 $_POST['chk']값이 넘어가는 것보다
필요한 값만 넘기기 위해서는
필요한 input 태그에만 name을 써주면 된다는 것입니다.
만에 하나, 저와 같이
<input> 태그에는 무조건 name이 들어가야 한다는 고정관념을 갖고 계신 분들께
조금이나마 도움이 되지 않을까 하여 이곳에 올립니다.
요약:
1) 어떤 객체에 있어 id는 자바스크립트의 getElementById를 활용할 때 사용된다.
2) 폼태그에 있어 name은 폼값을 넘기기 위해서 사용된다.
3) 따라서, 폼값을 굳이 넘겨야 할 필요가 없는 폼에 name은 군더더기에 불과하다.
태클 환영합니다.
저는 태클에서 많이 배우더라구요. ^^
--------------------------------------------------------------------------------------------
추가로 송효진님의 좋은 댓글 (참고로 type='image' 에서는 적용이 안 되는군요.)
------------------------------------------------------------
input 에 name 을 생략 가능한 가장 큰 이유는 submit 입니다.
< input type="submit" name="submit" value="a" />
< input type="submit" name="submit" value="b" />
name 을 주면 submit 도 값을 보낼 수 있죠.
그것도 누르는것에 따라 다른 값.
------------------------------------------------------------
출처: http://webphp.tistory.com/5 [Web▶]
'Tip' 카테고리의 다른 글
div안의 img에 높이4px공백 (0) | 2017.09.13 |
---|---|
inline요소 vs block요소 (0) | 2017.09.12 |
글자생략 코드 (0) | 2016.12.19 |
텍스트 사이 세로라인 만들기 (0) | 2016.12.19 |
서브라임텍스트 단축키 (0) | 2016.12.11 |