<!DOCTYPE html> <meta charset=utf-8> <title>Datalist element options</title> <link rel="author" title="Denis Ah-Kang" href="mailto:denis@w3.org"> <link rel=help href="https://html.spec.whatwg.org/multipage/#the-datalist-element"> <script src="/resources/testharness.js"></script> <script src="/resources/testharnessreport.js"></script> <div id="log"></div> <label> Number: <input list=numbers> </label> <datalist id=numbers> <label> Select number: <select id=num> <option label="zero" value="0"> <option label="one" value="1"> <option label="two">2 <option label="three" disabled>3 <option> </select> </label> </datalist> <script> test(function(){ var datalist = document.getElementById('numbers'), labels = [], values = []; assert_equals(datalist.options.length, 5); for (var i = 0, len = datalist.options.length; i < len; i++) { assert_equals(datalist.options[i], datalist.options.item(i)); labels.push(datalist.options[i].label); values.push(datalist.options[i].value); } assert_array_equals(labels, ["zero", "one", "two", "three", ""]); assert_array_equals(values, ["0", "1", "2", "3", ""]); }, "options label/value"); test(function(){ assert_false(document.getElementById('num').willValidate); }, "If an element has a datalist element ancestor, it is barred from constraint validation"); </script>