[AJAX] Ajax fonctionne sur onblur mais pas sur onkeypress
salut,
J'ai fait une petite application pour éditer du texte sur une page web.
ça consiste à double cliquer sur du texte qui est alors remplacé par un champ.
Quand l'utilisateur clique (onblur) à coté du champ ou appuie sur "entrée" (onkeypress) j'appelle une fonction ajax pour changer le texte dans une bdd.
ça fonctionne très bien quand l'utilisateur appuie à coté. Mais si on appuie sur la touche "entrée" la page est rechargée.
voici comment est appelé ma fonction ajax :
Code:
1 2
|
<input type="text" value="test" onblur="changeName(10,this.value);" onkeypress="if(event.keyCode==13) changeName(10,this.value);"> |
et voici ma fonction ajax (manque t-il un return false; ?) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
function changeName(id,newContent){
var div = document.getElementById(id);
var xhr = httpRequest();
xhr.onreadystatechange = function(){
if(xhr.readyState == 4 && xhr.status == 200){
result = xhr.responseText;
div.innerHTML = result;
}
}
xhr.open('GET','functions/getUpdateMenu.php?type=update&id=' + id + '&content=' + newContent,true);
xhr.send(null);
} |
Merci d'avance pour votre éclairage