Exécution fonction jvascript

chti_moon Messages postés 63 Statut Membre -  
kij_82 Messages postés 4260 Statut Contributeur -
Bonjour,

Ma question va peut-etre vous semblez facile, mais je voudrais savoir comment on fait pour exécuter une fonction javascript ?

Voilà mon code :

    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
      
        
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet essai</title>");
   
        out.println("</head>");
        out.println("<body>");  

        float C2 = 0;

               out.println("<script language=\"javascript\"> function maFonction() {retour = prompt(\"hauteur : \")" +
                                    "if ( retour != null ){ window.location = \"/http://localhost:8084/Essai/essai?C2=\" + retour;} " +
                    "} </script>");


comment exécuter maFonction ?
A voir également:

6 réponses

kij_82 Messages postés 4260 Statut Contributeur 857
 
Bonjour chti_moon,

Pour le moment tu as définie ta fonction dans ta page, il te suffit ensuite de l'appeller :
out.println("<script language=\"javascript\">maFonction();</script>");


0
chti_moon Messages postés 63 Statut Membre 4
 
Ok merci :)

Mais quand je fais ça, rien ne se passe... A moins que je n'ai pas compri ma fonction, je ne vois pas pourquoi.

maFonction m'affiche un prompt me demandant une hauteur.
Ensuite le :

if ( retour != null ){ window.location = \"/http://localhost:8084/Essai/essai?C2=\" + retour;}


permet de donner au paramètre C2 la valeur C2+retour

Mais même mon prompt ne s'affiche pas...
0
chti_moon Messages postés 63 Statut Membre 4
 
Autant pour moi, j'avais oublié un point virgule :$

Mais maintenant, j'ai une boucle ac mon prompt !! :'(
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
La boucle est due au fait que tu rappelle la même page suite au prompt, donc la page se recharge, le prompt apparait de nouveau, tu remplit, le prompt récupère la valeur, cette valeur n'est pas nulle, alors tu recharge la page, etc... et ainsi de suite.
C'est bien ca ? En tout cas point de vue code c'est ce que je comprends.
0

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

Posez votre question
chti_moon Messages postés 63 Statut Membre 4
 
oui effectivement c'est ça.

J'ai réglé le pb en créant une page html ac mon script.
Mais par contre, Est-ce possible de transformer la valeur que je récupère (un String) en float ?
Car j'ai essayer ac parseFloat mais j'ai une erreur àl'exécution : java.lang.NullPointerException
0
kij_82 Messages postés 4260 Statut Contributeur 857
 
Tu ne peux pas non. Java et javscript c'est pas la meme chose, là tu utilise java et les servlet pour afficher une page, une fois le code java exécuté, ta page apparait. Ensuite dans cette page tu as mis du javascript (qui s'éxécute coté client, et non coté serveur), celui s'éxécute donc indépendament de ton code java.
Si tu tente de récupérer quelque chose dans le code java, tu ne récupèrera rien, et si tu fais une transformation dessus (ou une simple utilisation) tu aura donc une NullPointerException puisque ta valeur est nulle.

C'est ce que j'ai essayer de te dire dans ton post précédent, tu ne peux pas gérer une intéraction avec l'internaute de cette facon là. C'est n'est pas une application standalone que tu développe, mais un site, il faut donc utiliser la bonne méthode.
0