J'ai des cases à cocher sur ma page pour lesquelles je voudrais envoyer leur état à la base de données via Ajax. Je sais comment utiliser jQuery avec Ajax, mais je ne sais pas comment obtenir l'état vérifié, à la fois vérifié et décoché avec l'ID de la case à cocher afin que je puisse le renvoyer au serveur. P>
Des idées? P>
5 Réponses :
Eh bien, il est assez facile de trouver les cases à cocher: L'astuce est que dans les cases à cocher HTML n'a que la valeur significative lorsque vérifié em>. Quand ils ne sont pas vérifiés, que dis-tu au serveur? P> Eh bien, si vous avez une convention à travailler (peut-être toujours envoyer "vrai" lors de l'enregistrement et "Faux" lorsqu'il n'est pas coché), La prochaine chose que vous devez décider, c'est comment les amener à votre serveur. Vous pouvez utiliser la fonction jQuery qui vous donne une chaîne prête à être clouée sur une URL ou envoyé sous forme de données via param code> pour activer la liste en une chaîne de paramètres: p>
$. Ajax code>. p> p>
if ($("#yourCheckboxID").is(":checked")) { // checkbox is checked } else { // checkbox is not checked } will do the job.
quelque chose comme ceci:
Combinant votre solution et la réponse acceptée par AIN:
<script type="text/javascript"> $(document).ready(function(){ var isChecked = $("input:checkbox").is(":checked") ? 1:0; $.ajax({ url: 'on_off.aspx', type: 'POST', data: { strID:$("input:checkbox").attr("id"), strState:isChecked } }); }); </script>
en ajoutant dans l'événement de changement à la solution fusionnée. Voulez-vous que cela déclenche chaque fois que la case à cocher est modifiée.
<script type="text/javascript"> $(document).ready(function(){ $("input:checkbox").change(function() { var isChecked = $("input:checkbox").is(":checked") ? 1:0; $.ajax({ url: 'on_off.aspx', type: 'POST', data: { strID:$("input:checkbox").attr("id"), strState:isChecked } }); }); }); </script>