나는 기능상의 목적을 벗어난 ID를 사용하려고 시도하는 경향이 있습니다. 어느 것이 내 질문에, 양식에 항목을 표시 할 때 여러 가지 방법이 있습니다. 나는 항상 ID를 피하기 위해이 방법을 사용했다. 그러나, 대체 방법의 프로와 콘은 무엇입니까? 편도는 다른 브라우저보다 브라우저에 더 의미 론적 의미가 있습니까? 접근성이 어떻게 그것에서 역할을합니까? 구현의양식 레이블 지정의 의미
내 일반적인 방법
<form role="form" action="#" method="post" name="form" novalidate>
<label>
<span>Search</span>
<input role="search" type="search" placeholder="Search" name="s">
</label>
<button role="button" type="submit" name="s-btn">Search</button>
</form>
그러나, 당신은 또한 for=""
을 사용하고 해당 필드에 대한 ID 레이블을 지정할 수 있습니다. 어느 쪽이 분명히 type="radio"
과 type="checkbox"
에 더 잘 맞았지만 위의 의미 값보다 더 나은 의미 값을 가지고 있습니까?
<form role="form" action="#" method="post" name="form" novalidate>
<label for="s">Search</label>
<input role="search" type="search" id="s" placeholder="Search" name="s">
<button role="button" type="submit" name="s-btn">Search</button>
</form>
그리고 당신도이이 for=""
과 응집력 사용되어야한다, ID의와뿐만 아니라 라벨 WAI-ARIA를 사용하거나 그것은 독립 실행 형 라벨링 방법?
<form role="form" action="#" method="post" id="Form" novalidate>
<label id="s" for="sf">Search</label>
<input role="search" aria-labelledby="s form" id="sf" type="search" placeholder="Search" name="s">
<button role="button" aria-labelledby="form" type="submit" name="s-btn">Search</button>
</form>
이 질문 인해 유지 관리, 최적화, 의미, 그리고 접근성을 균형의 끝없는 추구에 데려 같아요.
일반적으로 ID가 필요 없으므로 서버 측 및 jquery 용도로 자유롭게 사용할 수 있도록 ID를 사용하지 않습니다.일반적으로 이름을 사용하여 각 양식/필드 세트에서 양식 데이터를 제출합니다. 당신은 많은 유효한 점을 만들고 나는 당신이 그것을 쓰는 데 걸린 시간과 당신이 그것을 설명하는 방법의 특이성에 크게 감사한다. 누군가 다른 사람의 글을 빨리 덮어 쓰지 않으면 CSS의 ID를 정의하지 않습니다. 그러나 필드가 더 이상 양식의 자식이 될 필요가 없으므로 ID를 사용하기 위해 다시 시작할 수 있으며이 경로를 사용할 때 좀 더 유연하게 추가 할 수 있습니다. 다시 한 번 감사드립니다! – darcher
나는 이름이 필수적인 경우에는 익숙하지 않지만, 그것이 반드시 존재하지 않는다는 것을 의미하지는 않습니다. javascript getElementById는 적절하게 사용될 때 완벽합니다. 그래서 그것은 상대적 답변이기도합니다. 롤. 기본적으로 "It Depends ..."라는 제목의 극도로 세련된 개발자가 기사를 읽었습니다. 기본적으로 개발자가 진행하는 이벤트 흐름을 처리하고 다양한 이벤트를 가능하게하기 위해 이벤트를 측면에서 작업합니다. 그것은 우리의 매체입니다. 가장 좋은 조언은 웹 표준을 개발하고 웹 플랫폼 기술을 사용하는 것입니다. – albert
Re 이름 : PHP에서 컨트롤에서 값을 가져 와서 화면에 표시하고, db에 삽입하는 등,'name'을'id'와 비교합니다. 나는 다른 언어에 대해 논평 할 수 없다. –