2009-06-15 2 views
6
<p> 
    <input type="text" id="search" name="keywords" /> 
    <input type="submit" value="Search" name="Submit" /> 
</p> 

위의 코드에서 유효성 검사 오류가 발생했지만 id = "search"를 제거한 후에 유효성 검사는 오류없이 수행되었습니다. 이드가 필요하다고 생각했는데, 거기에 있어야하는지 궁금하네요?입력 태그의 "id"가 필요합니까?

+0

어떤 유효성 검사 오류가 있습니까? –

+0

동일한 이름을 가진 다른 검색 입력 유형이 있었기 때문에 다른 이름으로 id = "search"를 변경해야한다는 것을 알았습니다. 그래서 저의 이름 바꾸기 만하면됩니다. – Holly

답변

11

해당 ID를 가진 다른 요소가 문서에 있습니까? 이는 검증이 실패하는 유일한 이유입니다. ID는 문서에서 고유해야합니다. 다른 곳에 있으면 ID가 유효하지 않습니다.

ID가있는 요소가 Javascript로 쉽고 빠르게 검색 될 수 있으므로 요소에서 클라이언트 측 작업을 수행 할 때 ID가 유용합니다. 필드를 가리 키도록 for 속성 (ID를 가짐)을 사용할 수 있으므로 <label> 요소를 사용하는 경우에도 유용합니다.

이외에는 별 문제가되지 않습니다.

+1

레이블 대상이 내가 사용하는 주요 이유입니다. 라디오 버튼이나 체크 박스를 클릭하도록하는 웹 사이트를 증오하는 것을 싫어합니다. –

+0

그 아이디에는 아무 것도 없습니다. 나는 그것이 사실이라고 생각했다. 그러나 100 % 확실하지 않았다. 그래서 방금 제거 했으니 까. 고맙습니다! – Holly

3

ID 속성이 필요하지 않습니다. name 속성은 전달 된 속성입니다.

+1

올바르지 않습니다. IT가 실제로 다른 방향입니다. http://www.devguru.com/technologies/xhtml/QuickRef/xhtml_attribute_id.html –

-4

다니엘이 정확합니다. 속성의 레이블은 입력의 이름 속성과 연관됩니다. 이런 식으로 for = "first_name"으로 레이블을 선택하면 name = "first_name"인 입력을 선택할 것입니다.

+1

이 답변은 실제로 잘못되었습니다.

관련 문제