Je crée un formulaire pour rechercher un client, en utilisant soit l'identifiant soit le courriel, les deux sont définis pour être uniques. Application effectuée sur Codeignitor .
Ceci est j'ai codé, je dois transmettre la valeur du bouton radio au fichier Controller.php
Formulaire (inclus uniquement le bouton radio )
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="col-md-4"> <label class="radio-inline"> <input type="radio" name="optradio" value="id" checked>Using ID </label></div> <div class="col-md-4"> <label class="radio-inline"> <input type="radio" name="optradio" value="mail">Using DOB</label> </div>
$(document).ready(function() { $("#usingdob").hide(); $("#usingmail").hide(); $("input:radio").click(function() { if ($(this).val() == "id") { $("#usingId").show(); $("#usingdob").hide(); $("#usingmail").hide(); } else { $("#usingId").hide(); $("#usingdob").show(); $("#usingmail").show(); } }); });
Je m'attendais à obtenir la valeur du bouton radio correctement entrez la description de l'image ici a>
4 Réponses :
<↓JS:XXX
Essayez ceci
<script type="text/javascript"> $( document ).ready(function() { $("#usingdob, #usingmail").hide(); $('input[name="radio"]').click(function() { if($(this).val() == "id") { $("#usingId").show(); $("#usingdob, #usingmail").hide(); } else { $("#usingId").hide(); $("#usingdob, #usingmail").show(); } }); }); </script>
Une chose que j'ai remarquée est que vous avez "mail" comme valeur dans l'option DOB. Une autre est qu'il semble y avoir 3 options et pourtant vous n'avez que 2 radios?
J'ai ajusté la valeur du mail à dob et créé des div factices pour tester le code. Cela semble fonctionner.
<?php if (isset($_POST['submit'])) { if(isset($_POST['optradio'])) { Radio selection is :".$_POST['optradio']; // Radio selection } ?>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class="col-md-4"> <label class="radio-inline"> <input type="radio" name="optradio" value="id" checked>Using ID </label></div> <div class="col-md-4"> <label class="radio-inline"> <input type="radio" name="optradio" value="dob">Using DOB</label> </div> <div id="usingId"> Using Id div </div> <div id="usingdob"> Using dob div </div> <div id="usingmail"> Using mail div </div>
En ce qui concerne la transmission de la valeur au contrôleur, idéalement, les entrées doivent être sous forme. Lorsque vous soumettez le formulaire, la valeur sélectionnée peut être transmise au php.
$(document).ready(function() { $("#usingdob").hide(); $("#usingmail").hide(); $("input:radio").click(function() { console.log($(this).val()); if ($(this).val() == "id") { $("#usingId").show(); $("#usingdob").hide(); $("#usingmail").hide(); } else { $("#usingId").hide(); $("#usingdob").show(); $("#usingmail").show(); } }); });
Si vous voulez obtenir la valeur du bouton radio actuellement cochée, essayez la ligne ci-dessous qui retournera la valeur actuelle du bouton radio
var radioValue = $("input[name='gender']:checked").val(); if(radioValue) { alert("Your are a - " + radioValue); }
Pour accepter une réponse, passez la souris à gauche de la réponse et cliquez sur la coche. Lorsque vous avez 15 représentants, vous pouvez voter pour les réponses, mais pour l'instant, veuillez accepter une réponse. Merci.