> 웹 프론트엔드 > HTML 튜토리얼 > html5 & lt; datalist & gt; 양식 입력에 대한 자동 완성 제안을 생성하는 요소?

html5 & lt; datalist & gt; 양식 입력에 대한 자동 완성 제안을 생성하는 요소?

Karen Carpenter
풀어 주다: 2025-03-12 16:16:13
원래의
131명이 탐색했습니다.

자동 완성을 위해 html5 <datalist></datalist> 요소를 활용합니다

html5 <datalist></datalist> 요소는 양식 입력에 대한 자동 완성 제안을 제공하는 간단한 방법을 제공합니다. <datalist></datalist> 요소를 list 속성을 사용하여 <input> 요소와 연결하여 작동합니다. <datalist></datalist> 요소 자체에는 <option></option> 요소가 포함되어 있으며 각 요소는 가능한 제안을 나타냅니다. 사용자가 연관된 <input> 필드에서 입력을 시작하면 브라우저에는 <datalist></datalist> 의 옵션이 포함 된 드롭 다운 목록이 표시됩니다.

당신이하는 방법은 다음과 같습니다.

 <code class="html"><input type="text" list="browsers" name="browser"> <datalist id="browsers"> <option value="Chrome"> </option>
<option value="Firefox"> </option>
<option value="Safari"> </option>
<option value="Edge"> </option>
<option value="Opera"> </option></datalist></code>
로그인 후 복사

이 예에서 "브라우저"로 list <input> 요소는 id "브라우저"와 <datalist></datalist> 요소에 연결됩니다. 브라우저는 <datalist></datalist> 의 옵션을 입력 필드의 사용자 유형으로 자동 표시합니다. 그런 다음 사용자는 드롭 다운에서 제안을 선택하거나 계속 입력하여 수동으로 값을 입력 할 수 있습니다. <datalist></datalist> 요소 자체는 페이지에 직접 표시되지 않습니다. 연결된 입력에 대한 제안의 원천으로 만 사용됩니다.

<datalist></datalist> 제안 스타일

불행히도, CSS를 직접 사용하는 <datalist></datalist> 요소가 제공하는 제안을 스타일링하는 것은 제한적입니다. 드롭 다운 목록 자체를 표준 CSS 선택기로 직접 스타일링 할 수는 없습니다. 브라우저 공급 업체는 다양한 렌더링 스타일을 구현했으며 모든 브라우저에서 이러한 스타일을 무시할 수있는 일관된 방법은 없습니다. <datalist></datalist> 또는 그 <option></option> 요소를 CSS와 스타일링하려는 시도는 종종 일관성이 없거나 효과가 없습니다.

그러나 간접적으로 외관에 영향을 줄 수 있습니다. 예를 들어, <input> 요소 자체를 스타일링 할 수 있으며, 이는 자동 완성 제안의 전반적인 시각적 컨텍스트에 영향을 미칩니다. 글꼴, 테두리 또는 패딩을 변경할 수 있습니다. 그러나 드롭 다운 스타일은 여전히 ​​도전적이고 브라우저에 따라 남아 있습니다. 이 제한은 복잡한 스타일 요구 사항에 네이티브 <datalist></datalist> 요소를 사용하는 중요한 단점입니다.

<datalist></datalist> 의 브라우저 호환성 문제

<datalist></datalist> 요소는 최신 브라우저에서 광범위한 지원을 즐기지 만, 일부 호환성 뉘앙스를 알고 있어야합니다.

  • 구형 브라우저 : 매우 오래된 브라우저는 <datalist></datalist> 요소를 전혀 지원하지 않을 수 있습니다. 이전 브라우저의 경우 JavaScript를 사용하여 사용자 정의 자동 완성 기능을 만드는 것과 같은 폴백 메커니즘이 필요합니다. JavaScript를 사용하는 기능 감지하면 브라우저가 를 의존하기 전에 <datalist></datalist> 지원하는지 여부를 결정하는 데 도움이됩니다.
  • 렌더링 불일치 : 앞에서 언급했듯이 제안의 시각적 렌더링은 브라우저마다 약간 달라질 수 있습니다. 기능은 일관성이 유지되지만 스타일의 미묘한 차이가 관찰 될 수 있습니다. 이것은 철저한 크로스 브라우저 테스트의 필요성을 강조합니다.
  • 접근성 : 장애가있는 사용자가 구현할 수 있는지 확인하십시오. 특히 화면 리더에게 자동 완성 기능의 접근성을 향상시키기 위해 적절한 ARIA 속성이 필요할 수 있습니다.

<datalist></datalist> JavaScript로 동적으로 채우십시오

JavaScript를 사용하여 <datalist></datalist> 요소 내의 옵션을 동적으로 채울 수 있습니다. 이를 통해보다 유연하고 데이터 중심의 자동 완성 제안을 만들 수 있습니다. 서버, 데이터베이스 또는 기타 소스에서 데이터를 가져올 수 있습니다.

예는 다음과 같습니다.

 <code class="javascript">const datalist = document.getElementById('myDatalist'); const options = ['apple', 'banana', 'cherry', 'date']; options.forEach(option => { const optionElement = document.createElement('option'); optionElement.value = option; datalist.appendChild(optionElement); });</code>
로그인 후 복사

이 코드 스 니펫은 id "mydatalist"로 <datalist></datalist> 요소를 선택한 다음 다양한 옵션을 통해 반복합니다. 각 옵션마다 새 <option></option> 요소를 생성하고 값을 설정하여 <datalist></datalist> 에 추가합니다. 이 접근법을 사용하면 제안을 동적으로 구축하여보다 반응적이고 적응 가능한 자동 완성 경험을 제공 할 수 있습니다. 이 코드를 특정 데이터 소스 및 가져 오기 메커니즘에 조정해야합니다. 예를 들어, fetch 사용하여 API에서 데이터를 검색 할 수 있습니다.

위 내용은 html5 & lt; datalist & gt; 양식 입력에 대한 자동 완성 제안을 생성하는 요소?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿