Tek formda birden çok radyo düğmesi grubu


114

Tek bir formda birden fazla radyo düğmesi grubuna sahip olmak mümkün müdür? Genellikle bir düğmeyi seçmek öncekinin seçimini kaldırır, sadece bir gruptan birinin seçimini kaldırmam gerekir.

<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
Onlara isim verin (yani<input type="checkbox" name="checkGroup1" value =""/>
paul

Yanıtlar:


195

nameBir grup oluşturmak için eşit nitelikler ayarlayın ;

<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
değer her seferinde "" eşitse, hangi radyo düğmesinin seçildiğini nasıl bilebilirim? bir radyo düğmesinin seçilip seçilmediğini nasıl anlarım?
user3182532

23
Kendi değerlerinizi girin
pankijs

12

Sadece bir şey yapın, aynı türler için name özelliğini ayarlamamız gerekiyor. örneğin.

Aşağıdakileri deneyin:

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

Ve ayrıca bunu angular1, angular 2 veya jquery'de de yapabiliriz.

<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

Bu çok basittir, her radyo giriş grubunun farklı isimlerini tutmanız gerekir.

      <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

Bir girdi grubu oluşturmak için özel bir html öğesi oluşturabilirsiniz

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

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

her grupta seçili seçeneği korumak için, gruptaki girişlere ad niteliği eklemeniz gerekir, eğer eklemezseniz hepsi bir gruptur.


2
Bunun sorunun sorununu nasıl çözeceğini belirtebilir misiniz? Bu aynı zamanda sadece bir grup oluşturur, bu şekilde oluşturduğunuz her grubun girişlerine benzersiz bir ad ekler mi?
Marthyn Olthof

2

giriş alanında adı aynı yapın

<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" >
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.