Notice
Recent Posts
Recent Comments
Link
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

름름

폼태그 input 에서 id와 name 본문

Tip

폼태그 input 에서 id와 name

름름_ 2017. 1. 13. 16:42

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
Comments