[ Javascript ] : prototype pour checked un bouton radio

WRInaute impliqué
Bonjour,

Savez-vous comment faire pour " checked " un bouton radio à la suite d'un onclick ?

J'ai recherché du coté de prototype : voici mes test :

Code:
<input type="radio" name="test" id="test" value="premier" />
<div style="width:35px;height:35px;background-color:#03C" onclick="$("test").checked = true;">


Sans résultat :(

Avez-vous une idée ?
En fait je cherche une solution pour elargir la zone de click du bouton radio , donc j'ai pensé a faire un div cliquable autour du bouton radio , et lorsque l'on click a coté du bouton radio ca le coche quand meme . Pas bête nan ? :wink: Le problème est que je n'arrive pas a checker ce foutu bouton radio :oops:
 
WRInaute passionné
Pour savoir si il y a bien une action :
$(’test’).observe(’click’, function(e){alert(’checked = ‘ + this.checked);});

Diverses actions avec prototype pour "checké" ta checkbox :
$(’test’).checked = true;
$(’test’).setAttribute(’checked’, true);
$(’test’).setValue(”); // will un-check/null value
$(’test’).setValue(’anything’); // will check/on value
$(’test’).click(); // will toggle the checkbox

Donc ton code semble bon. Si tu mets un alert('test') sur ton onclick tu as bien qqchose?
 
Nouveau WRInaute
Stellvia a dit:
En fait je cherche une solution pour elargir la zone de click du bouton radio , donc j'ai pensé a faire un div cliquable autour du bouton radio , et lorsque l'on click a coté du bouton radio ca le coche quand meme . Pas bête nan ? :wink

Oh que oui :)

Et ce qui est encore moins bête, c'est :

Code:
<input id="r1" type="radio" name="bruit" value="ta"><label for="r1">Pa</label>
<input id="r2" type="radio" name="bruit" value="ta"><label for="r2">Ta<label>
<input id="r3" type="radio" name="bruit" value="tra"><label for="r2">Tra</label>

(en attendant que ça marche partout…)

Bien à toi,

PhilDePantin
 
Nouveau WRInaute
Re-

Sinon, pour répondre à ton problème, la tite fn que j'utilise personnellement (avec `prototypejs` évidemment ) :

Code:
function FORM_GetRadioChecked(form,id){
/**
*	Fonction renvoyant la valeur la valeur d'un radio-groupe
*
*	@param	str/objet DOM		form
*												Le formulaire, son id, ou même simplement l'élément
*												quelconque contenant le groupe radio
*	@param	str						id
*												Identifiant du nom du groupe radio (attribut 'name')
*
*@returns     null si aucun bouton radio n'est utilisé / sinon la valeur choisie
*/
	var valeur=null;
	$(form).select('[name="'+id+'"]').each(function(o){if (o.checked) valeur=o.value;});
	return valeur;
}

Utilisation :

Code:
var valeurChoisie=FORM_GetRadioChecked(idDeMonBoFormulaire, idDuGroupeRadio);


En espérant que ça inspire,

Phildepantin
 
Discussions similaires
Haut