Le principe est le suivant : utiliser généralement la méthode du parcours pour déterminer si chaque Radio est sélectionnée, et si oui, prendre sa valeur.
<form id="userlist" method="post" action="option.php"> <input type="radio" name="userid" value="1">1 <input type="radio" name="userid" value="2">2 <input type="radio" name="userid" value="3">3 </form> <script language="javascript"> function usubmit(action){ var radionum = document.getElementById("userlist").userid; for(var i=0;i<radionum.length;i++){ if(radionum[i].checked){ userid = radionum[i].value } } window.location.href='option.php?action='+action+'&userid='+userid; } </script>
Il est à noter que l'identifiant (liste d'utilisateurs) est défini dans le formulaire ci-dessus
Il y a deux choses auxquelles il faut faire attention ici : l'une est de savoir comment obtenir la valeur, et l'autre est de savoir comment parcourir
document.getElementById("userlist").userid;
Il s'agit d'une méthode permettant de prendre la valeur du nom de l'élément de contrôle en fonction de l'identifiant du formulaire.
Vous pouvez également utiliser document.getElementsByName("userid") pour obtenir directement
La différence entre getElementById et getElementsByName. GetElementById ne peut sélectionner qu'un seul contrôle lors de la sélection d'un élément de type radio. Lorsque getElementsByName sélectionne un élément de type radio, il supprime l'intégralité du réseau radio. Si vous devez utiliser getElementById, vous pouvez d'abord l'utiliser. getElementById pour l'obtenir comme le code ci-dessus L'identifiant du formulaire entier, suivi du nom de la radio
.Nous savons maintenant que document.getElementsByName("userid") doit obtenir un tableau. Les éléments du tableau sont tous les éléments portant le nom radionum dans l'arborescence DOM. Même s'il n'y a qu'une seule radio, c'est une. tableau contenant un seul élément.
Document.all.userid est différent. Il obtient une référence à l'élément userid dans la page. Lorsqu'il y a plusieurs radios dans la page, il renvoie un tableau. Si la page ne contient qu'une seule radio, la radio que vous obtenez est cette radio. Référence d'objet. Puisque ce que vous obtenez à ce moment n'est pas un tableau, vous ne pouvez pas parcourir le tableau pour porter un jugement.
est transformé en fonction comme suit :
function getRadioBoxValue(radioName) { var obj = document.getElementsByName(radioName); //这个是以标签的name来取控件 for(i=0; i<obj.length;i++) { if(obj[i].checked) { return obj[i].value; } } return "undefined"; }
JS obtient la valeur sélectionnée en radio
function Foo() { var selectedIndex = -1; var form1 = document.getElementById("form1"); var i = 0; for (i=0; i<form1.r.length; i++) { if (form1.r[i].checked) { selectedIndex = i; alert("您选择项的 value 是:" + form1.r[i].value); break; } } if (selectedIndex < 0) { alert("您没有选择任何项"); } }