Bouton Radio décochez l'option sur la deuxième clic
J'ai BEAUCOUP de boutons radio saisir une valeur dans ma base de données et si elle est à "1", je fais le bouton radio coché.
Si un bouton radio est coché, et que l'utilisateur clique sur nouveau, je veux toujours être en mesure d'effacer ce bouton. Quelqu'un aurait-il une idée?
$radio1
saisit des données de la base de données et seront soit 0, 1, ou 2
<input value="1" name="radio1" type="radio"<?php if($radio1==1){echo " checked";} ?>>
<input value="2" name="radio2" type="radio"<?php if($radio1==2){echo " checked";} ?>>
Varun Malhotra Réponse légèrement modifiée:
J'ai changé 2 lignes de code qui fonctionnait un peu mieux pour moi. Mais dans l'ensemble, Varun réponse était PARFAIT!
$('input[type="radio"]').click(function(){
var $radio = $(this);
//if this was previously checked
if ($radio.data('waschecked') == true)
{
$radio.prop('checked', false);
$radio.data('waschecked', false);
}
else
{
$radio.prop('checked', true);
$radio.data('waschecked', true);
}
//remove was checked from other radios
$radio.siblings('input[type="radio"]').data('waschecked', false);
});
Cela sonne plus comme vous voulez une case à cocher.
Je veux un bouton radio parce que je ne veux pas un utilisateur de la cueillette à plus d'une option.
Envisager d'ajouter un autre bouton radio "aucun" puis.
Pour le style des fins, ce n'est pas une option pour moi. Il doit être sur un deuxième clic. Je ne peux pas ajouter plus de boutons radio.
qu'entendez-vous par
Je veux un bouton radio parce que je ne veux pas un utilisateur de la cueillette à plus d'une option.
Envisager d'ajouter un autre bouton radio "aucun" puis.
Pour le style des fins, ce n'est pas une option pour moi. Il doit être sur un deuxième clic. Je ne peux pas ajouter plus de boutons radio.
qu'entendez-vous par
clear this button
? supprimer quoi ?OriginalL'auteur bryan | 2013-11-10
Vous devez vous connecter pour publier un commentaire.
Je vous suggère d'ajouter un attribut personnalisé pour garder une trace de chaque radio de l'état antérieur de la sorte:
Vous devrez également ajouter cet attribut à l'abord vérifié radio balisage
JSFIDDLE DÉMO
Mise à JOUR:
Mais faire en sorte que vous n'avez pas d'autres radio-groupes de travail avec, sinon, vous devrez fournir certains attributs de préciser ces boutons comme nom prop, je me suis concentré plus tôt.
Vous pouvez supprimer le nom de l'accessoire pour votre commodité, mais Vous devez avoir quelque chose pour le référencement d'un particulier bouton radio. Donc nommer un bouton radio est le moyen le plus commun. Il suffit de donner un même nom. Si vous le souhaitez, vous pouvez avoir des identifiants différents pour tous, ce serait le pire des cas je pense.
Veuillez consulter les mises à jour de réponse.
Merci Varun! Donc j'ai séparé cliquez sur la fonction de chaque bouton radio que j'ai? À la fin de ce projet, j'aurai environ 100. Aussi, voudrais-je transférer à une base de données comme je le feriez normalement?
J'ai fini par mettre
$('input[type="radio"]').click
à la place, et il a travaillé très bien. Laissez-moi savoir si cela va causer un problème, mais c'est très bien.OriginalL'auteur softvar
Événement de changement de feux avant, cliquez sur lorsque vous ne cliquez d'abord. Vous pouvez les utiliser. En collaboration avec de nombreux groupes de radio et même si vous avez prechecked boutons radio.
JSFIDDLE DÉMO
OriginalL'auteur mrsnowin
Cela devrait fonctionner de manière plus générale que les autres solutions comme il traite les cas où toutes les radios ne sont pas dans le même parent.
OriginalL'auteur Bertrand Bordage
OriginalL'auteur Bohdan Vorona
Voici ma solution, qui fonctionne pour les appareils tactiles ainsi que les clics de souris:
https://codepen.io/robbiebow/pen/bjPvEO
OriginalL'auteur Better Deal
Je ne sais pas exactement pourquoi, mais la réponse choisie par l'utilisateur softvar ne fonctionne pas pour moi, alors je suis venu avec les options suivantes en fonction de softvar réponse, après environ deux heures de l'essayer. Le mettre ici au cas où ça peut aider quelqu'un d'autre. Vous pouvez spécifier les données "actives" dans le HTML, 0 ou 1 selon la "sélection" de la valeur que vous obtenez à partir de la DB.
et
OriginalL'auteur Envayo