Кілька груп перемикачів в одній формі


113

Чи можливо мати декілька груп перемикачів в одній формі? Зазвичай, обираючи одну кнопку, знімає вибір попередньої, мені просто потрібно буде відмінити одну з груп.

<form>
    <fieldset id="group1">
        <input type="radio" value="">
        <input type="radio" value="">
    </fieldset>

    <fieldset id="group2">
        <input type="radio" value="">
        <input type="radio" value="">
        <input type="radio" value="">
    </fieldset>
</form>

16
Дайте їм імена (тобто<input type="checkbox" name="checkGroup1" value =""/>
Паиля

Відповіді:


194

Встановити рівні nameатрибути для створення групи;

<form>
  <fieldset id="group1">
    <input type="radio" value="value1" name="group1">
    <input type="radio" value="value2" name="group1">
  </fieldset>

  <fieldset id="group2">
    <input type="radio" value="value1" name="group2">
    <input type="radio" value="value2" name="group2">
    <input type="radio" value="value3" name="group2">
  </fieldset>
</form>


1
якщо значення щоразу дорівнює "", як я можу дізнатися, яку перемикач вибрали? як я можу дізнатись, чи взагалі вибрано перемикач?
користувач3182532

23
Вставте власні значення
pankijs

12

Просто зробіть одне, нам потрібно встановити властивість імені для тих же типів. напр.

Спробуйте нижче:

<form>
    <div id="group1">
        <input type="radio" value="val1" name="group1">
        <input type="radio" value="val2" name="group1">
    </div>
</form>

А також ми можемо це зробити у angular1, angular 2 або в jquery також.

<div *ngFor="let option of question.options; index as j">
<input type="radio" name="option{{j}}" value="option{{j}}" (click)="checkAnswer(j+1)">{{option}}
</div>  

8

Це дуже просто. Вам потрібно зберігати різні назви кожної групи вводу радіо.

      <input type="radio" name="price">Thousand<br>
      <input type="radio" name="price">Lakh<br>
      <input type="radio" name="price">Crore
      
      </br><hr>

      <input type="radio" name="gender">Male<br>
      <input type="radio" name="gender">Female<br>
      <input type="radio" name="gender">Other


2

Для створення групи входів ви можете створити користувальницький html-елемент

window.customElements.define('radio-group', RadioGroup);

https://gist.github.com/robdodson/85deb2f821f9beb2ed1ce049f6a6ed47

щоб зберегти вибраний варіант у кожній групі, вам потрібно додати атрибут імені до входів у групі, якщо ви не додаєте його, то все це одна група.


2
Чи можете ви вказати, як це вирішує проблему? Це також створює лише одну групу, чи додає це унікальне ім'я до входів кожної створеної вами групи?
Marthyn Olthof

2

у полі введення зробіть ім’я так само, як

<input type="radio" name="option" value="option1">
<input type="radio" name="option" value="option2" >
<input type="radio" name="option" value="option3" >
<input type="radio" name="option" value="option3" >
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.