Bonjour, je suis novice en javascript/ajax et je souhaite effectuer un controle de "disponibilité" d'un nom dans une base de donnée via un formulaire (jsp) et une servlet. J'aimerai que cette vérification se fasse sans rafraichissement de la page et du coup j'ai utilisé ajax. Le controle du pseudo dans la BD fonctionne mais je ne sais pas comment renvoyer la réponse de la servlet vers la jsp. Est ce que quelqu'un peut m'aider? Merki^^.

voici un extrait du code du formulaire:
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.4.min.js"></script>
 
</head>
 
<style>
 
table {margin: 0 auto;} 
 
</style>
 
<body>
 
<h1>Créer une nouvelle campagne</h1>
 
<form action='Interface1Renvoi' method='POST' onsubmit="return (ValiderMail(this) && ValiderChampsFormulaire(this))">
 
<table width="475" border="0">
 
....
<tr>
	<th width="25%" >
	</th>
		<th width="75%" align="left">
		<h2>Nom de l'expéditeur  :</h2>
		<input type='text' name='NomExpediteur' id='NomExpediteur' size='60'/><br>
		<span id="msgbox" style="display:none"></span>
	</th>
	</tr>
...


voici le code javascript :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$('#NomExpediteur').blur(function ()
{
  $('#msgbox').removeClass().addClass('messagebox').text('Vérification...').fadeIn('slow');
  $.post('VerificationNom', {
    NomExpediteur: $(this).val()
  }, function (reponse)
  {
    if (reponse == 'non')
    {
      $('#msgbox').fadeTo(200, 0.1, function ()
      {
        $(this).jsp('Ce nom existe déjà').addClass('busy').fadeTo(900, 1);
      });
    } 
    else
    {
      $('#msgbox').fadeTo(200, 0.1, function ()
      {
        $(this).jsp('Ce pseudo est libre').addClass('dispo').fadeTo(900, 1);
      });
    }
  });
});
et le code post de ma servlet:
Code java : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
		doGet(request, response);
 
		String nom=request.getParameter("NomExpediteur");
 
		Connection connexion = null;
		try {
 
		    // chargement du driver
		    Class.forName( "com.mysql.jdbc.Driver" );
		    ...
 
		    // connexion à la BDD
		    connexion = DriverManager.getConnection(url, utilisateur, motDePasse); 
 
		    // recherche du nom
 
		    Statement statement = connexion.createStatement();
		    String requete = "SELECT count(*) as res FROM LISTENOMMAIL WHERE Nom= '" + nom + "' ;";
		    ResultSet recherche = statement.executeQuery(requete);
 
		    int res=0;
		    while(recherche.next()){
		    res= recherche.getInt("res");
		    }
 
		    //renvoi de la reponse vers la jsp
 
		    response.setContentType("text/xml");
 
			if (res==0) 
			{
				System.out.println("non");
				response.getWriter().write("non");
			} else 
			{
				System.out.println("oui");
				response.getWriter().write("oui");				
			}
 
			connexion.close();
 
		} 
		catch ( ClassNotFoundException e ) {
		    /* Gérer les éventuelles erreurs ici. */			
			System.out.println("erreur classe");
 
		}
		 catch ( SQLException e ) {
		    /* Gérer les éventuelles erreurs ici */
			 System.out.println("erreur sql");
 
....