Comment recuperer un id incrémenté en jquery
AL-ALI
-
jordane45 Messages postés 30426 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 30426 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour a tous ,
voici mon input
mon soucis comment récupérer mon id en jquery tout en récupérant aussi $nbquestionnaires.
genre pour recuperer mon id je sais qu'on fait
mon soucis comment reponses suivit de la valeur qui contient $nbquestionnaires
example :si $nbquestionnaires contient le chiffre 1,2,3.........
comment recuperer var reponse=jQuery("#reponses+$nbquestionnaires" ).val();
qui sera comme ca var reponse=jQuery("#reponses1" ).val(); ou
var reponse=jQuery("#reponses2" ).val();
voici mon input
<input type="radio" name="reponses'.$nbquestionnaires.'" id="reponses'.$nbquestionnaires.'">
mon soucis comment récupérer mon id en jquery tout en récupérant aussi $nbquestionnaires.
genre pour recuperer mon id je sais qu'on fait
var reponse=jQuery("#reponses" ).val();
mon soucis comment reponses suivit de la valeur qui contient $nbquestionnaires
example :si $nbquestionnaires contient le chiffre 1,2,3.........
comment recuperer var reponse=jQuery("#reponses+$nbquestionnaires" ).val();
qui sera comme ca var reponse=jQuery("#reponses1" ).val(); ou
var reponse=jQuery("#reponses2" ).val();
| EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI Merci d'y penser dans tes prochains messages. |
3 réponses
-
Bonjour,
As tu entendu parlé des DATA-ATTRIBUTES ?
<input type="radio" name="reponses" id="reponses_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" value="1">
Et des SELECTEURS en JQUERY ? il existe le :checked .... très pratique pour les radios et les checkboxes.var valueReponse = $("input[name='reponses']:checked").val(); var nbquestionnaires = $("input[name=reponse]:checked").data('nbquestionnaires'); var id = $("input[name=reponse]:checked").attr('id');
-
bjr jordane45 pour etre claire dans ma question,j'ai deux boutons radio qui sont: '<input type="radio" name="reponses_'.$nbquestionnaires.'" id="oui_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" style="display:inline">oui<br/> <input type="radio" name="reponses_'.$nbquestionnaires.'" id="non_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" style="display:inline">non lorqu'on check sur oui il recupere l'identifiant ou on a clické sur le bouton radio. lorque je fais avec ce que tu as mis il n'affiche rien c'est a dire la recuperation ne se fait pas var valueReponse = $("input[name='reponses']:checked").val();
-
-
var valueReponse = jQuery("input[name='reponses_']:checked").val(); var nbquestionnaires = jQuery("input[name=reponses_]:checked").data('nbquestionnaires'); var id = jQuery("input[name=reponses_]:checked").attr('id'); alert(nbquestionnaires);exit(); avec ca rien ne s'affiche -
En même temps... si tu changes tout ce que j'ai écrit .. normal que ça ne fonctionne plus.....
Ton HTML doit être comme ceci :<input type="radio" name="reponses" id="reponses_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" value="1">
Et dans ce cas... le JAVASCRIPT sera :var valueReponse = $("input[name='reponses']:checked").val(); var nbquestionnaires = $("input[name='reponse']:checked").data('nbquestionnaires'); var id = $("input[name='reponse']:checked").attr('id'); //pour afficher alert("ID ="+id); alert("nbquestionnaires ="+nbquestionnaires ); alert("valueReponse ="+valueReponse );-
mon code html est dans une boucle foreach donc cout
mon html deviens comme caoui<input type="radio" name="reponses_'.$nbquestionnaires" id="oui_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" value="1">non<input type="radio" name="reponses_'.$nbquestionnaires" id="non_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" value="1">
dans ce cas ,comment on ecrira cette ligne,surtout le name comment on l'ecrira?
var valueReponse = $("input[name='reponses??????']:checked").val();
parce que dans la premiere ligne du foreach on auraid=oui_0 ,name=reponses_0 pour le oui id=non_0 ,name=reponses_0 pour le non deuxieme lignes id=oui_1 ,name=reponses_1 pour le oui id=non_1 ,name=reponses_1 pour le non
-
POURQUOI tiens tu à mettre qqchose dans le NAME ???
Ecris SIMPLEMENT : name='reponse' dans ton INPUT !
Il est où le souci ????
Pour gagner du temps... donnes nous le code complet de ta page ..... parce que là ... tu me fais tourner en rond !foreach ($ToutesLesquestionnaires as $Unequestionnaire) { $listequestionnaires.="<tr bgcolor='#FFFFFF' style='font-size:11px'>"; $listequestionnaires.="<td class='modal_form'>".$Unequestionnaire->idquestions_sante."</td>"; $listequestionnaires.="<td class='modal_form' style='white-space:inherit'>".$Unequestionnaire->questions_santelibelle."</td>"; $listequestionnaires.='<td class="modal_form"><input type="radio" name="reponses_'.$nbquestionnaires.'"id="oui_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" style="display:inline">oui<br/>'; $listequestionnaires.='<input type="radio" name="reponses_'.$nbquestionnaires.'" id="non_'.$nbquestionnaires.'" data-nbquestionnaires="'.$nbquestionnaires.'" style="display:inline" value="1">non</td>'; $listequestionnaires.='<td class="modal_form"><textarea name="autres_'.$nbquestionnaires.'" id="autres_'.$nbquestionnaires.'" style="width:100px;height:25px;"></textarea></td>'; $listequestionnaires.="</tr>"; } $listequestionnaires.="</table>"; }
si je mets simplement reponses dans mon name,mes deux boutons radios oui et non pouront etre choisit en meme tps les deux,or je souhaite selectionner qu'un seul bouton ca d soit oui soit non
-
Alors on va faire autrement....
On va passer par une classe fictive qu'on va nommer "radioOuiNon"
foreach ($ToutesLesquestionnaires as $Unequestionnaire){ $listequestionnaires.="<tr bgcolor='#FFFFFF' style='font-size:11px'> <td class='modal_form'>".$Unequestionnaire->idquestions_sante."</td> <td class='modal_form' style='white-space:inherit'>".$Unequestionnaire->questions_santelibelle."</td> <td class='modal_form'> <input type='radio' class ='radioOuiNon' name='reponses_$nbquestionnaires' id='oui_$nbquestionnaires' data-nbquestionnaires='$nbquestionnaires' style='display:inline'>oui<br/> <input type='radio' class ='radioOuiNon' name='reponses_$nbquestionnaires' id='non_$nbquestionnaires' data-nbquestionnaires='$nbquestionnaires' style='display:inline' value='1'>non </td>'; <td class='modal_form'> <textarea name='autres_$nbquestionnaires' id='autres_$nbquestionnaires' style='width:100px;height:25px;'></textarea> </td>'; </tr>"; }
Ensuite, en Javascript, tu peux simplement faire :
var radioElm =$(".radioOuiNon:checked"); var valueReponse = elmChecked.val(); var nbquestionnaires = elmChecked.data('nbquestionnaires'); var id = elmChecked.attr('id'); //pour afficher alert("ID ="+id); alert("nbquestionnaires ="+nbquestionnaires ); alert("valueReponse ="+valueReponse );
-