Rechercher : dans
Par :

Formulaire avec AJAX

Dernière réponse le 15 avr 2009 à 13:10:33 Ebnou_Ljabal, le 26 sep 2008 à 20:19:08 
 Signaler ce message aux modérateurs

Bonjour,
Bonjour,[smile]
Je débute en AJAX.
Ma question est la suivante:
Pourquoi ce code fonctionne dans IE7 et pas dans FireFox 3. Et je dois préciser que ça ne marche pas qu'on je passe par l'événement onsubmit. par contre quaund j'utilise un événement onclick d'un bouton ça marche.
Le fichier client.html

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Client</title>
<script type="text/javascript">
function test(){
	var xhrObj=null;
	if(window.XMLHttpRequest)xhrObj=new XMLHttpRequest();//Firefox
	else if(window.ActiveXObject)xhrObj=new ActiveXObject("Microsoft.XMLHTTP");//Internet Explorer
	else{//XMLHttpRequest non supporté par le navigateur
		alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
		return;
	}
	xhrObj.open("POST","serveur.php",true);
	xhrObj.onreadystatechange=function(){
		if(xhrObj.readyState==4){
			alert(xhrObj.responseText);
		}
	}
	xhrObj.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	f=document.getElementById('frm');
	var data="donnee="+f.donnee.value;
	xhrObj.send(data);	
}
</script>
</head>
<body>
<form name="frm" id="frm" enctype="multipart/form-data" method="POST" onsubmit="test()">
<label>Donnée : </label><input type="text" id="donnee" />
<input type="submit" value="OK" />
</form>
</body>
</html>

le fichier serveur.php
<?php
extract($_POST);//le champ nom
echo "La donnee saisie est : ".$donnee;
?>

Merci d'avance
Ebnou_Ljabal
Configuration: Windows XP
Firefox 3.0.2

Meilleures réponses pour « Formulaire avec AJAX » dans :
[Webmaster] Un formulaire de contact pour votre site VoirCe formulaire permet d'avoir une page pour être contacté sur son site, sans utiliser de logiciel de messagerie. La personne qui vous contacte indique son adresse, l'objet du message et son message (évidemment). Le code est une version...
Javascript - Effacer un champ de formulaire lors du clic (focus) VoirIl vous est sûrement arrivé de tomber sur un formulaire HTML avec des valeurs pré-remplies décrivant par exemple le type de valeur attendue. L'intention est louable mais il est désagréable de devoir sélectionner ce texte et le supprimer avant de...
Ergonomie des formulaires en ligne VoirLes formulaires constituent un style d'interaction particulier qui comme les formulaires papier permettent de guider la saisie d'informations dans des champs spécifiques identifiés par des intitulés... Les formulaires permettent notamment de...
AJAX (Asynchronous Javascript And XML) VoirIntroduction à AJAX AJAX (Asynchronous Javascript And XML, traduisez Javascript asynchrone et XML) est une méthode de développement web basée sur l'utilisation d'un script Javascript pour effectuer des requêtes web à l'intérieur d'une page web...
Les formulaires HTML VoirIntérêt d'un formulaire Les formulaires interactifs permettent aux auteurs de pages Web de doter leur page web d'éléments interactifs permettant par exemple un dialogue avec les internaute, à la manière des coupons-réponse présents dans certains...
Servlets - Gestion des formulaires VoirIntroduction aux formulaires Les servlets rendent très simple la récupération de données envoyées par l'intermédiaire de formulaires HTML, c'est-à-dire une interface graphique permettant à l'utilisateur de saisir des données. Grâce à la balise...

1

Alain_42, le 26 sep 2008 à 20:45:45
  • +1

Bonsoir,

ça ne marche pas qu'on je passe par l'événement onsubmit. par contre quaund j'utilise un événement onclick d'un bouton ça marche.

c'est normal le bouton type submit va envoyer le formualire, alors que tu essaye en parralele d'envoyer les données au script par Ajax

ne mets pas un bouton submit mais un bouton type button

c'est justement l'intérêt de Ajax de pouvoir appeler un script sur le serveur sans envoyer le formulaire

Répondre à Alain_42

4

Ebnou_Ljabal, le 27 sep 2008 à 00:52:04

Grand merci aux intervenants.

Alain_42
Si j’ai bien compris on ne peut pas utiliser AJAX avec l’événement onsubmit dans le navigateur FIREFOX uniquement. Car avec IE7 mon code marche
Ebnou_Ljabal

Répondre à Ebnou_Ljabal

2

zzzrod, le 26 sep 2008 à 20:51:30

Pourquoi vous n'utilise pas jquery?
C'est trop facile...
www.jquery.com

Répondre à zzzrod

3

Ebnou_Ljabal, le 27 sep 2008 à 00:50:14

Grand merci aux intervenants.
zzzrod
En fait j’utilise ajax pour profiter de la possibilité d’échanger les données avec le serveur sans recharger toute la page.
Ebnou_Ljabal

Répondre à Ebnou_Ljabal

5

 Riku Asakura, le 15 avr 2009 à 13:10:33

Bonjour,

En effet et zzzrod te présente jquery car il permet l'utilisation simplifiée d'AJAX, et quand je dis simplifiée c'est vraiment simplifiée !
Renseignes-toi ici http://docs.jquery.com/Ajax

Au plaisir ;)

Répondre à Riku Asakura