Pourquoi alert s 'affiche pas

Résolu
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013 - 21 juil. 2012 à 18:25
 Utilisateur anonyme - 28 août 2012 à 18:45
salut j'apprend ajax . dès que je commence et deja je suis bloqué . j 'essai de reprendre un tuto . mais je sais pas pourquoi l alert s 'affiche pas .

voici le code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript">
if(function(){
  $("#formcom").submit(function(){
    pseudo = $(this).find("input[name=pseudo]").val();
message = $(this).find("textarea[name=message]").val();
alert(speudo+"---"+message);
   });
});
</script>
</head>




les commentaires

<?php
$q =mysql_query("SELECT * FROM coms") ;
while($d = mysql_fetch_assoc($q)){
 echo $d['pseudo']."a ecrire :";
 echo "
";
 echo $d['com'];
 echo "
";
}
?>
<form   method="post" action="" id="formcom">

  
    
  


   ton message


  
    <textarea name="message" cols="30" rows="5"></textarea>
  


  
    
  


</form>



</html>

12 réponses

msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
13 août 2012 à 19:54
oui merci ça marche . merci beaucoup . les chemin n etais pas justes
3
Utilisateur anonyme
24 juil. 2012 à 16:10
Salut,

Si tu n'as pas d'alert, c'est que tu ne rentres jamais dans ton if. Tu m'expliques ce que tu as voulu faire avec if(function(){ ?!


--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
24 juil. 2012 à 16:48
meme sans le if(function(){ . j 'ai pas d alerte
0
Utilisateur anonyme
25 juil. 2012 à 15:35
Salut,

Quel framework JS utilises-tu ? Mootools ou jQuery par exemple ? Tu n'as pas de warnings ou de message d'erreur dans ta console de développement ? L'idée est que le code qui définit ta fonction de submit qui afficher la pop-up est définit trop tôt. En gros, il faut que tu appelles ce code quand la page sera entièrement chargée, afin que le JavaScrit puisse récupérer le composant formcom et y définir la fonction submit. De mémoire, c'est du document.ready ou du windows.ready, je ne sais plus, tout dépend du framework utilisés.

Vois-tu où je veux en venir ?


--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
25 juil. 2012 à 17:36
je vois pas trop vu que je suis debutant
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
25 juil. 2012 à 20:10
comment je fait pour savoir quel framework js j 'itilise
0
Utilisateur anonyme
26 juil. 2012 à 16:43
<script type= "text/javascript" src= "http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>


C'est une blague ou tu ne connais même pas les outils que tu utilises et le code sur lequel tu travailles ? Je n'avais pas fait attention à ça au début, là ton framework est jQuery . Je te conseille de te renseigner dessus car ne pas savoir ce qu'on utilise pour développer est assez déconcertant.

je vois pas trop vu que je suis debutant

Bon, je vais faire simple, mais ça me surprend que quelqu'un t'aie mis sur un projet sans t'expliquer un minimum pourquoi tu passes par jQuery.

Explication :
1) Tu as une page. Celle ci à différents composants comme des champs de textes, des boutons, des liens, etc. Ton navigateur va interpréter le code HTML pour construire ta page.
2) Tu as du JavaScript. Ce langage côté client te permet de manipuler tes pages. Tu des frameworks comme MooTools et jQuery. jQuery t'offre un panel de fonctions avec une syntaxe particulière.
3) Toi, tu veux ajouter dynamiquement (pourquoi d'ailleurs ne pas le faire une bonne fois pour toute ?) une fonction à ton formulaire qui va être exécutée quand il sera envoyé au serveur.
4) Pour ce faire, tu chopes ton formulaire par son id, d'où $("#formcom").submit(...)
5) Sauf que ce code s'exécute pendant que ta page se charge. Or, il se peut très bien que le code soit exécuté avant que ton formulaire soit créé. Donc avec $("#formcom"), tu ne récupères rien puisque ta page n'est pas entièrement chargée.
6) L'idée que je t'ai proposée est d'attendre que ta page se charge et de définir ensuite cette fonction.

D'où le code (par exemple) :
<script type  ="text/javascript">
$(window).load(function() {
  $("#formcom").submit(function(){
    pseudo = $(this).find("input[name=pseudo]").val();
message = $(this).find("textarea[name=message]").val();
alert(speudo+"---"+message);
   });
}
</s]cript>



C'est clair cette fois ? Pourquoi ton if(function{... ? Essaye déjà avec le code plus haut.

--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
28 juil. 2012 à 14:17
j'ai fais ce que tu ma demandé mais toujours pas d'alerte :
voici le code :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(window).load(function() {
  $("#formcom").submit(function(){
    pseudo = $(this).find("input[name=pseudo]").val();
message = $(this).find("textarea[name=message]").val();
alert(speudo+"---"+message);
   });
}
</script>
</head>




les commentaires

<?php
include("conf.php");
$q =mysql_query("SELECT * FROM coms") ;
while($d = mysql_fetch_assoc($q)){
 echo $d['pseudo']."a ecrire :";
 echo "
";
 echo $d['com'];
 echo "
";
}
?>
<form   method="post" action="" id="formcom">

  
    
  


   ton message


  
    <textarea name="message" cols="30" rows="5"></textarea>
  


  
    
  


</form>






</html>
0
Utilisateur anonyme
28 juil. 2012 à 15:15
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="jquery.js"></script>


Je peux savoir pourquoi as-tu changé ton head ? Importer deux fois la même ne sert absolument à rien. Remet le head précédent et essaye à nouveau (cf ci-dessous).


<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Document sans titre</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(window).load(function() {
  $("#formcom").submit(function(){
    pseudo = $(this).find("input[name=pseudo]").val();
message = $(this).find("textarea[name=message]").val();
alert(speudo+"---"+message);
   });
}
</script>
</head>




les commentaires

<?php
include("conf.php");
$q =mysql_query("SELECT * FROM coms") ;
while($d = mysql_fetch_assoc($q)){
 echo $d['pseudo']."a ecrire :";
 echo "
";
 echo $d['com'];
 echo "
";
}
?>
<form   method="post" action="" id="formcom">

  
    
  


   ton message


  
    <textarea name="message" cols="30" rows="5"></textarea>
  


  
    
  


</form>






</html>


--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0
msi079 Messages postés 212 Date d'inscription lundi 2 août 2010 Statut Membre Dernière intervention 25 juillet 2013
28 juil. 2012 à 16:58
oui merci les message et pseudo s 'affichent mais pas de boite de dialogue
0
Utilisateur anonyme
29 juil. 2012 à 12:56
les message et pseudo s 'affichent mais pas de boite de dialogue

Comment ça ? De quoi parles-tu en parlant de messages ?

As-tu testé le code que j'ai mis dans mon précédent post ? As-tu vérifié si les chemins vers les scripts sont bons ?

--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0
Utilisateur anonyme
28 août 2012 à 18:45
Dans ce cas, clique sur "Réponse acceptée".


--
Pylouq
Heureux sont ceux qui lisent le Réglement, ils ne finiront peut-être pas au bûcher.
0
Rejoignez-nous