Как указать, что требуется группа переключателей

Я понимаю, как разместить значок в текстовом поле, чтобы указать пользователю, что это необходимо, а в форме HTML5 получить подсказку о том, что поле должно быть заполнено.

есть ли аналогичный механизм для переключателей и флажков?

Ниже показана простая группа радиокнопок, которые я использую.

  <!DOCTYPE html>

  <polymer-element name='marital-status-form'>
    <template>
    <style">

      #col1 { order:1; }
      #col2 { order:2; align-self:flex-start; }
      #hr { order:3; }

    </style>
      <form id='form'
            name='form'
            on-change='{{updateModel}}'>

        <section 
          <label for='marriedRdo' id='marriedLbl' >Married</label>
          <label for='divorcedRdo' id='divorcedLbl' >Divorced</label>
          <label for='singleRdo' id='singleLbl' >Single</label>
          <label for='visitingRdo' id='visitingLbl' >Visiting</label>

        </section>

        <section >
          <input id='marriedRdo'
                 name='status'
                 type="radio"
                 value='Married'
                 on-click='{{submit}}'>
          <input id=divorcedRdo name='status' type='radio' value='Divorced'>
          <input id='singleRdo' name='status' type="radio" value='Single' >
          <input id=visitingRdo name='status' type='radio' value='Visiting'>
        </section>

        <hr id='hr'>
        <delete-dispatch-form id='delete-dispatch-form'></delete-dispatch-form>

        <button id='submit-btn'
          type='submit'></button>

        </form>
      </template>

     <script type="application/dart">

      import 'package:polymer/polymer.dart' show CustomTag, observable, PolymerElement;

      import 'dart:html' show Event, Node, InputElement;


      @CustomTag( 'marital-status-form')
      class MaritalStatusForm extends RooleElement
      {
        @observable String choice= '';

        MaritalStatusForm.created() : super.created();

        void updateModel(Event e, var detail, Node target)
        {
          //maritalStatus.status = (e.target as InputElement).value;

          //print( encode( maritalStatus ) );

        }


        void submit ( Event e, var detail, Node target )
        {
          $['form'].onSubmit.listen( ( e )
              {
                e.preventDefault();
              } );
        }

      }

    </script>
  </polymer-element>

person st_clair_clarke    schedule 20.12.2013    source источник
comment
Для меня это просто вопрос HTML5, который почти не имеет ничего общего с Dart. Так что поменяю теги.   -  person Günter Zöchbauer    schedule 20.12.2013


Ответы (2)


Простое решение этой проблемы — выбрать радиокнопку по умолчанию. Таким образом, пользователь может либо остаться со значением по умолчанию, либо выбрать другой вариант. Это, по сути, «требует» группу переключателей.

person Shailen Tuli    schedule 28.12.2013

С точки зрения html, вы можете добавить «обязательный» атрибут к одному из радиовходов в группе, и для этого потребуется выбрать один из вариантов.

<input id='marriedRdo'
             name='status'
             type="radio"
             value='Married'
             on-click='{{submit}}'
             required="required">

Посмотрите эту скрипту для демонстрации: http://jsfiddle.net/lickmydesign/5y4Lv6gc/

person Adam O'Dwyer    schedule 12.08.2014