Bagaimana mengizinkan hanya satu tombol radio untuk diperiksa?


145
{% for each in AnswerQuery %}
    <form action={{address}}>
        <span>{{each.answer}}</span><input type='radio'>
        <span>Votes:{{each.answercount}}</span>
        <br>
    </form>
{% endfor %}

Ini adalah bagian dari templat Django saya , yang seharusnya dilakukan adalah mencetak beberapa tombol radio, sesuai dengan jawaban yang diberikan pada tombol tersebut. Tetapi saya tidak tahu mengapa saya dapat memeriksa beberapa tombol radio, yang membuat saya kacau. Seharusnya hanya membiarkan saya memeriksa satu tombol radio dan saya punya entah bagaimana tetapi saya kehilangan itu. Ada bantuan? Terima kasih.

Jawaban:


433

Beri mereka nama yang sama:

<input type="radio" name="radAnswer" />

OMG ... well, jika saya tidak memberikan nama kepada mereka. mereka semua harus memiliki string kosong sebagai nama, bukan? Terima kasih
Clinteney Hui

20
@Clinteney tanpa nama mereka bukan benar-benar bagian dari formulir dan nilainya tidak akan dikirim saat mengirimkan formulir. Nama ini digunakan oleh browser untuk mengatur "grup" tombol radio, hanya satu tombol radio di setiap grup yang dapat dipilih pada satu waktu dan memilih yang lain akan menghapus pilihan sebelumnya. :)
Shadow Wizard adalah Ear For You

Bingo, ini yang paling sederhana namun kuat.
Rishabh

Untuk proyek yang baru saja saya warisi, kedua tombol radio pada formulir saya HARUS dinamai berbeda. Satu bidang adalah bidang SEMUA, bidang lainnya dinamis, berdasarkan nilai dalam URL. Mereka ingin pengguna hanya dapat memilih satu radio.
user3120861

@ user3120861 jadi satu-satunya cara adalah dengan menggunakan kode sisi klien, yaitu JavaScript. Mungkin dengan JS sederhana, tetapi lebih mudah dengan jQuery. Untuk detail lebih lanjut, silakan hubungi saya di obrolan, dan jika kita akan mendapatkan sesuatu saya akan menambahkan jawabannya. Bersulang! :)
Shadow Wizard adalah Ear For You


41

Semua tombol radio harus memiliki nama yang sama:

<input type='radio' name='foo'>

Hanya 1 tombol radio dari setiap kelompok tombol dengan nama yang sama yang dapat diperiksa.


19

Beri mereka nama yang sama, dan itu akan berhasil. Menurut definisi, tombol Radio hanya akan memiliki satu pilihan, sedangkan kotak centang dapat memiliki banyak pilihan.

<input type="radio" name="Radio1" />


7

Beri mereka nama yang sama di seluruh formulir yang Anda gunakan.

<form><input type="radio" name="selection">
      <input type="radio" name="selection">
      ..
      ..
</form>

6

Tambahkan atribut "nama" dan simpan nama yang sama untuk semua tombol radio dalam formulir.

yaitu,

<input type="radio" name="test" value="value1"> Value 1
<input type="radio" name="test" value="value2"> Value 2
<input type="radio" name="test" value="value3"> Value 3

Semoga itu bisa membantu.


5

Semua opsi tombol radio harus memiliki nama yang sama agar Anda dapat memilih satu opsi sekaligus.


@PHPer mungkin karena dia memberikan jawaban yang sama dengan jawaban yang diterima tetapi 6 tahun kemudian ...
norcal johnny

@norcaljohnny Harus dilaporkan / ditandai tetapi hanya
memilihnya

@PHPer santai saja. Saya tidak pernah mengatakan saya menurunkannya, saya hanya menjawab komentar Anda, mengapa, itu mungkin telah dibatalkan.
norcal johnny
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.