Più gruppi di pulsanti di opzione in una forma


113

È possibile avere più gruppi di pulsanti di opzione in un'unica forma? Di solito selezionando un pulsante si deseleziona il precedente, ho solo bisogno di deselezionare uno di un gruppo.

<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
Assegna loro dei nomi (ad esempio<input type="checkbox" name="checkGroup1" value =""/>
paolo,

Risposte:


194

Imposta nameattributi uguali per creare un gruppo;

<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
se il valore è sempre uguale a "", come faccio a sapere quale pulsante di opzione è stato scelto? come faccio a sapere se è stato scelto un pulsante di opzione?
user3182532

23
Inserisci i tuoi valori
pankijs

12

Basta fare una cosa, dobbiamo impostare la proprietà name per gli stessi tipi. per es.

Prova di seguito:

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

E possiamo anche farlo in angular1, angular 2 o anche in 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

Questo è molto semplice, è necessario mantenere nomi diversi di ogni gruppo di ingressi radio.

      <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

Per creare un gruppo di input puoi creare un elemento html personalizzato

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

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

per mantenere l'opzione selezionata in ogni gruppo, è necessario aggiungere l'attributo name agli input nel gruppo, se non lo si aggiunge, tutto è un gruppo.


2
Puoi specificare come questo risolve il problema della domanda? Questo crea anche un solo gruppo, aggiunge un nome univoco agli input di ogni gruppo che crei in questo modo?
Marthyn Olthof

2

nel campo di input rendere il nome uguale a

<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" >
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.