как да настроите необходим избор без избрана стойност по подразбиране

Опитвам се да принудя потребителя да направи избор, вместо просто да използвам първото поле. Как да попреча на потребителя да изпрати този формуляр, без да използва javascript?

<select required>
  <option >Make a selection</option>
  <option value="saab">Saab</option>
  <option value="vw">VW</option>
  <option value="audi">Audi</option>
</select> 

person Daniel    schedule 15.08.2014    source източник
comment
Мисля, че е невъзможно, просто направете валидирането от страната на сървъра или използвайте валидаторите на html 5 the-art-of-web.com/html/html5-form-validation   -  person Netorica    schedule 15.08.2014
comment
comment
можете да използвате ajax, за да потвърдите полето за избор и да покажете необходимото съобщение, ако стойността е по подразбиране.   -  person Faiz Ahmed    schedule 15.08.2014


Отговори (2)


Съгласно този отговор, можете да използвате атрибута required на HTML5 на <select>, ако зададете на <option> по подразбиране празен атрибут value (наред с други критерии, вижте <select> документите< /a>).

Ако избраният елемент има указан задължителен атрибут, няма указан множествен атрибут и има размер на дисплея 1; и ако стойността на първия елемент на опцията в списъка с опции на елемента за избор (ако има такъв) е празният низ и родителският възел на елемента на опцията е елементът за избор (а не елемент на optgroup), тогава тази опция е елементът за избор на елемент опция за етикет на контейнер.

Така че бихте искали

<select required>
    <option value="">Make a selection</option>
    <!-- more <option>s -->
</select>

По-старите браузъри ще се нуждаят от решение на JavaScript, предвид факта, че не поддържат HTML5.

person ajp15243    schedule 15.08.2014
comment
моля, обърнете внимание, че първата опция, която няма стойност (напр. атрибут ` ‹option value=›Make a selection‹/option›), cannot have the disabled`, в противен случай селекцията се премества веднага към следващата разрешена опция. - person FedericoCapaldo; 12.05.2021