'Hapus pilihan' sebuah radiobutton? [Tutup]


14

Saya selalu bertanya-tanya apakah ada cara atau trik untuk membatalkan pilihan tombol radio setelah Anda memilih satu.

Saya mengajukan ini sebagai pertanyaan umum, bukan mengenai program tertentu. itu bisa berupa program desktop atau halaman web.

Setelah Anda mengklik tombol radio, sepertinya tidak ada cara untuk tidak memilihnya, jadi jika Anda ingin mengosongkan bidang, Anda tidak bisa begitu Anda telah membuat pilihan. Ini semacam 'memaksa' Anda untuk memilih sesuatu.

UPDATE : Maaf, saya merujuk ke tombol radio dan bukan kotak centang, saya bingung persyaratan.


2
Bisakah Anda memberikan contoh spesifik di mana Anda telah melihat perilaku ini? Biasanya kotak centang memungkinkan Anda untuk mencentang dan menghapus centang pada kotak tersebut.
heavyd

2
Saya pikir Anda berbicara tentang tombol radio?
fretje

@retje: ya, saya minta maaf. Saya mengacu pada tombol radio
nmuntz

3
radiobuttons tidak dapat dipilih "oleh desain"
fretje

3
Jika Anda pernah menjumpai radio mobil tua, tombol preset adalah objek fisik yang harus Anda tekan. Mendorong salah satu muncul keluar yang lain. Hampir mustahil untuk "membatalkan pilihan" tanpa mendorong yang lain. Saya yakin dari situlah nama "tombol radio" berasal.
ale

Jawaban:


31

Anda sedang memikirkan tombol radio:

sekelompok kotak centang bulat di mana hanya satu yang dapat dipilih pada suatu waktu

... dan antarmuka apa pun yang membuat Anda ingin menghapus centang pada sekelompok tombol radio adalah Doing It Wrong ™. Tombol radio harus (terbaik) memulai dengan opsi default dicentang, tidak menerima input jika pengguna tidak membuat pilihan, atau (terburuk) menyediakan tombol untuk menghapus centang semuanya.

Jika mengeluh kepada perancang perangkat lunak / situs web bukanlah suatu pilihan, berikut adalah bookmarklet yang menghapus centang pada setiap tombol radio pada halaman:

javascript:(function(){var%20inputs%20=%20document.getElementsByTagName(%27input%27);for(var%20i%20=%20inputs.length-1;i>=0;i--){if(inputs[i].getAttribute(%27type%27)===%27radio%27)inputs[i].checked=false}})()

... dan inilah versi yang berfungsi di konsol:

(function(){var inputs = document.getElementsByTagName('input');for(var i = inputs.length-1;i>=0;i--){if(inputs[i].getAttribute('type')==='radio')inputs[i].checked=false}})()

Jika Anda berurusan dengan perangkat lunak desktop, satu-satunya opsi biasanya keluar dari layar bermasalah dan kembali masuk.


Saya menemukan ini setiap saat dengan survei online yang dirancang dengan buruk. Saya tidak dapat menjalankan skrip ini karena tertulis " Token tak terduga% " saat menjalankannya di konsol Chrome. Apa yang saya lakukan adalah menggunakan kemampuan Chrome untuk mengedit html: Tekan F12. Tekan kaca pembesar kecil di paling kiri, pilih radiobutton (seharusnya lielemen), lalu klik kanan ulelemen sekitarnya dan pilih Edit sebagai HTML . Salin salah satu tombol radio lainnya ( lielemen) dan masukkan di sebelah yang lain. Pilih di halaman, lalu edit ullagi untuk menghapus tombol radio.
Aske B.

1
@ ASBB. Saya baru saja menambahkan versi yang berfungsi di konsol!
4

7

Tambahkan tombol radio yang disebut Tidak Ada


1
+1 Itulah yang akan saya lakukan ... Tombol radio tidak dapat dipilih "oleh desain"!
fretje

3

Itu umumnya merupakan masalah dengan Tombol Radio, jenis bundar dari widget pemilihan yang memungkinkan hanya satu grup untuk dipilih. Kotak centang dirancang untuk memeriksanya atau menghapus centang. Saya ragu bahwa kotak centang secara umum tidak memungkinkan pemilihan. Mungkin baik untuk memberikan contoh masalah Anda.

Perhatikan bahwa jika Anda memiliki masalah 'membatalkan pilihan' item yang dipilih terakhir dalam satu set, itu selalu baik untuk mencoba mengklik pilihan Anda sambil menekan CTRL pada saat yang sama.


2
Itu tidak benar-benar masalah, mereka seharusnya membutuhkan seleksi. Mereka tidak seharusnya digunakan ketika "tidak ada jawaban" valid.
Greg D

Saya menggunakan 'umumnya masalah' sebagai perangkat retoris untuk menunjukkan bahwa OP mungkin merujuk ke tombol radio, bukan kotak centang. Saya tidak bermaksud mengatakan bahwa itu sebenarnya adalah masalah.
akf

1
+1 untuk solusi CTRL, yang sering tidak dikenal
Gnoupi

0

Apakah Anda yakin tidak mengacu pada tombol radio? Anda biasanya dapat menghapus centang pada kotak centang. Jika Anda mengacu pada tombol radio, hal terdekat yang dapat saya pikirkan adalah menggunakan plugin dev toolbar untuk Firefox untuk menghapus tombol radio.
Menu> Formulir> Hapus tombol Radio


ya, saya minta maaf, saya merujuk ke tombol radio.
nmuntz

0

Edit:

Jika ini adalah tombol radio Anda bisa menggunakan sampel Javascript ini atau mungkin melakukan sesuatu dengan AutoHotKey untuk membuat pintasan Anda sendiri untuk itu:

<script language="JavaScript">
<!--
function unCheckRadio(oRadio) {
      var or = document.getElementsByName(oRadio);
      for (var i = 0; i < or.length; i++) {
         or[i].checked = false;
     }
}
//-->
</script>

Tidak benar-benar relevan lagi, meskipun masih bermanfaat:

Saya telah menulis beberapa posting tentang Shortcuts keyboard topik untuk aplikasi yang berbeda dan Cara meningkatkan efisiensi dan pengalaman dengan belajar menggunakan cara pintas keyboard. Tetapi setiap kali saya masuk ke akun mana pun, saya menggunakan tombol tab untuk berpindah melintasi kotak isian untuk memasukkan userid dan kata sandi dan saya menggunakan mouse untuk memilih atau membatalkan centang pada kotak centang 'Biarkan saya tetap masuk'.

teks alternatif

Hanya hari ini saya menyadari bahwa saya tidak mengetahui apa cara pintas keyboard untuk memilih atau membatalkan centang pada kotak centang. Melakukan sedikit Googling dan mengetahui bahwa Space bar digunakan untuk kotak centang. Anda dapat menemukan kotak centang di berbagai tempat seperti 'Ingat Saya' atau 'Saya menerima kebijakan' dan di semua tempat itu jangan lupa untuk menggunakan bilah spasi untuk memilih atau membatalkan centang pada kotak centang.


Catatan Panduan Keyboard Firefox menyebutkan bahwa tombol radio tidak memiliki opsi toggle (on / off)
Ivo Flipse

Yah ini tidak benar-benar berguna lagi setelah dia mengedit pertanyaannya
Ivo Flipse
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.