Usunąć zaznaczenie przycisku radiowego? [Zamknięte]


14

Zawsze zastanawiałem się, czy istnieje jakiś sposób lub sztuczka, aby odznaczyć przycisk opcji po jego wybraniu.

Zadaję to jako ogólne pytanie, nie dotyczące konkretnego programu. może to być program komputerowy lub strona internetowa.

Po kliknięciu przycisku opcji wydaje się, że nie można go odznaczyć, więc jeśli chcesz pozostawić to pole puste, nie możesz, jeśli już dokonałeś wyboru. To „zmusza” cię do wybrania czegoś.

AKTUALIZACJA : Przepraszam, miałem na myśli przyciski opcji, a nie pola wyboru, pomyliłem warunki.


2
Czy możesz podać konkretny przykład miejsca, w którym widziałeś to zachowanie? Zazwyczaj pola wyboru pozwalają zarówno zaznaczyć, jak i odznaczyć pole.
heavyd

2
Myślę, że mówisz o przyciskach radiowych?
fretje

@fretje: tak, przepraszam. miałem na myśli przyciski radiowe
nmuntz

3
przyciski radiowe nie mogą być
dezaktywowane

3
Jeśli kiedykolwiek spotkałeś stare radio samochodowe, zaprogramowane przyciski były obiektami fizycznymi, które musiałeś wcisnąć. Wciśnięcie jednego wyskoczyło z drugiego. Niemożliwe było „odznaczenie” jednego bez angażowania drugiego. Jestem pewien, że stąd pochodzi nazwa „przyciski opcji”.
ale

Odpowiedzi:


31

Myślisz o przyciskach radiowych:

grupa okrągłych pól wyboru, w których jednocześnie można wybrać tylko jedno

… A każdy interfejs, w którym chcesz odznaczyć grupę przycisków opcji, to Doing it Wrong ™. Przyciski opcji powinny (najlepiej) zacząć od zaznaczonej opcji domyślnej, nie akceptować danych wejściowych, jeśli użytkownik nie dokona wyboru, lub (najgorsze) udostępnić przycisk do odznaczenia wszystkiego.

Jeśli skarga do projektanta oprogramowania / strony internetowej nie jest możliwa, oto broszura, która odznacza każdy przycisk opcji na stronie:

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}})()

... a oto wersja, która działa w konsoli:

(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}})()

Jeśli masz do czynienia z oprogramowaniem komputerowym, jedyną opcją jest zazwyczaj wyjście z problematycznego ekranu i powrót.


Spotykam się z tym od czasu do czasu za pomocą ankiet online, które są źle zaprojektowane. Nie mogłem uruchomić tego skryptu, ponieważ napisałNieoczekiwany token% ” podczas uruchamiania go w konsoli Chrome. Zamiast tego skorzystałem z możliwości Chrome do edycji HTML: Naciśnij F12. Naciśnij małe szkło powiększające po lewej stronie, wybierz przycisk radiowy (powinien to być lielement), a następnie kliknij prawym przyciskiem myszy otaczający ulelement i wybierz Edytuj jako HTML . Skopiuj jeden z pozostałych przycisków radiowych ( lielementów) i wstaw go obok innych. Wybierz go na stronie, a następnie edytuj ulponownie, aby usunąć przycisk opcji.
Aske B.

1
@AskeB. Właśnie dodałem wersję, która działa w konsoli!
s4y

7

Dodaj przycisk radiowy o nazwie Brak


1
+1 To właśnie zrobiłbym ... Przycisków opcji nie można odznaczyć „zgodnie z projektem”!
fretje

3

Jest to ogólnie problem z przyciskami radiowymi, okrągłym typem widżetów wyboru, które umożliwiają wybranie tylko jednej z grup. Pola wyboru mają na celu zaznaczenie lub odznaczenie. Wątpię, czy pola wyboru ogólnie nie pozwalają na odznaczenie. Warto podać przykłady swojego problemu.

Pamiętaj, że jeśli masz problem z „odznaczeniem” ostatniego zaznaczonego elementu w zestawie, zawsze dobrze jest spróbować kliknąć wybrany element, naciskając jednocześnie CTRL.


2
To naprawdę nie jest problem, powinny wymagać selekcji. Nie należy ich używać, gdy „brak odpowiedzi” jest prawidłowy.
Greg D

Użyłem „ogólnie problemu z” jako urządzenia retorycznego, aby wskazać, że OP prawdopodobnie odnosi się do przycisków opcji, a nie pól wyboru. Nie chciałem sugerować, że to rzeczywiście był problem.
akf

1
+1 za rozwiązanie CTRL, które często nie jest znane
Gnoupi,

0

Czy na pewno nie masz na myśli przycisku opcji? Zazwyczaj możesz odznaczyć pole wyboru. Jeśli masz na myśli przycisk opcji, najbliższą rzeczą, o której myślę, jest użycie wtyczki paska narzędzi dewelopera do przeglądarki Firefox w celu wyczyszczenia przycisków opcji.
Menu> Formularze> Wyczyść przyciski opcji


tak, przepraszam, miałem na myśli przyciski opcji.
nmuntz

0

Edytować:

Jeśli jest to przycisk opcji, możesz użyć tej próbki JavaScript lub zrobić coś z AutoHotKey, aby utworzyć własny skrót:

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

Już nie tak istotne, choć nadal przydatne:

Napisałem kilka postów na temat Skróty klawiaturowe dla różnych aplikacji oraz Jak poprawić wydajność i wrażenia poprzez naukę korzystania ze skrótów klawiaturowych. Ale za każdym razem, gdy loguję się na dowolne konto, używam przycisku tab, aby poruszać się po polu, aby wprowadzić identyfikator użytkownika i hasło, i używam myszy, aby zaznaczyć lub odznaczyć pole wyboru „Chcę pozostać zalogowany”.

alternatywny tekst

Dopiero dzisiaj zdałem sobie sprawę, że nie wiem, jaki jest skrót klawiaturowy, aby zaznaczyć lub odznaczyć pole wyboru. Zrobiłem trochę Googlinga i odkryłem, że spacja służy do zaznaczenia pola wyboru. Możesz natknąć się na pole wyboru w różnych miejscach, takich jak „Remember Me” lub „Akceptuję zasady”, a we wszystkich tych miejscach pamiętaj, aby użyć spacji, aby zaznaczyć lub odznaczyć pole wyboru.


Uwaga Przewodnik po klawiaturze Firefox wspomina, że ​​przycisk opcji nie ma opcji przełączania (włączania / wyłączania)
Ivo Flipse

Nie jest to już tak naprawdę przydatne, gdy zredagował swoje pytanie
Ivo Flipse,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.