Bonjour.
Dans un fichier index.php, j'ai ces déclarations:
// Sert de variable persistante
<input type="hidden" id="may_sub" name="may_sub" value="0" >
// Sert de tampon pour agir sur les éléments de la fenêtre principale sans utiliser AJAX.
<iframe id="buffer" name="buffer" width="0" height="0" frameborder="0"></iframe>
// Sert à vérifier le login et le cas échéant, se logger
<input type="button" id="btn_submit" name="btn_submit" class="button" value="Login" onclick="login_clicked()">
//Dans la procédure login_clicked(), j'appelle un fichier externe qui fait la vérification des info dans la bd.
//________________________________________________________
// Validation des champs de login sans ajax
//¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
function login_clicked()
buffer.location.replace("check_login.php?email=" + document.getElementById("email").value +
"&pwd="+ document.getElementById("pwd").value);
stat = document.getElementById("may_sub").value ;
if (stat != 1){
alert("Invalid e-mail or password!");
}
//Dans le cas qui m'intéresse, l'info retourné sur le buffer est ainsi:
else {
print <<<eot
<script language="JavaScript">
parent.document.getElementById('btn_submit').value = 'buz'; //***Juste pour un test
parent.document.getElementById('may_sub').value = '0';
</script>
eot;
//Puisque ces info sont envoyées dans le iframe du fichier index, elles sont automatiquement interprétées, sans rafraîchir la page. Le problème que j'expérimente, est que le tag hidden may_sub n'est jamais mis à jour. J'ai essayer de modifier une autre élément de la page (voir ***) et ça fonctionne.
La grande question. pourquoi, je peux changer la valeur d'un input de type button, mais pas celle d'un type hidden...???