[AJAX] changer un label en fonction d'une checkbox
bonjour,
j'ai un petit bout de code pour modifier la valeur d'un label en fonction de ma checkbox.
Mais quand elle est décocher rien ne se passe
index.php
Code:
1 2 3 4 5 6
|
<div id='active' style='display:inline' onclick='message_checkbox();'>
<label>cocher pour désactiver le mail</label><input type='checkbox' name='active' id='case_active' value='1'>
</div> |
fonction Ajax.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
<?php
//Cette page php va permettre d'afficher une phrase
$coche = $_POST['idCase'];
if($coche==true)
{
echo "<label>decocher pour activer le mail</label><input type='checkbox' name='active' id='active' value='0' checked='checked'>";
}
else
{
echo "<label>cocher pour desactiver le mail</label><input type='checkbox' name='active' id='active' value='1'>";
}
?> |
fonction.js
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
|
function message_checkbox()
{
//On fait un teste du navigateur
getXhr();
// On défini ce qu'on va faire quand on aura la réponse
xhr.onreadystatechange = function()
{
// On ne fait quelque chose que si on a tout reçu et que le serveur est ok
if(xhr.readyState == 4 && xhr.status == 200)
{
lacheckbox = xhr.responseText;
document.getElementById('active').innerHTML = lacheckbox;
}
}
//On definie le mode du transfert de la variable vers une page php
xhr.open("POST","Ajax_checkbox.php",true);
//ne pas oublier ceci pour la methode POST
xhr.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
//ne pas oublier de poster les arguments
var coche = document.formulaire_mail['active'].checked;
if (document.formulaire_mail['active'].checked==true)
{
alert(coche);
xhr.send("idCase="+coche);
}
} |
lorsqu'elle est cocher elle change le label mais rien quand elle est decoché.