Bonjour à tous,
nouveau problème à vous soumettre :
J'ai une image que je voudrais ré-actualiser en ajax à l'aide d'un bouton.
Cette image est produite par un servlet (les servlet peuvent renvoyer des images au lieu de renvoyer du texte) par le biais d'une balise img ou je met la source pointée sur mon servlet.
Voici ce que j'ai fait :
code ajax :
code html :
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
24 function captchaRefreshFunction() { // Mettre dans le champ cache du formulaire le contenu de l'editeur dojo.xhrPost( { url: "../jcaptcha", // Programme cote serveur handleAs: "image/png", timeout: 5000, // Delai d'attente maximal en millisecondes load: function(response, ioArgs) { // Reaction si succes dojo.byId("captcha").value = response; //dojo.byId("captcha").innerHTML = response; //return response; }, error: function(response, ioArgs) { // Reaction si echec dojo.byId("captcha").innerHTML = "Erreur HTTP " + ioArgs.xhr.status; //return response; }, form: "captchaForm" }); } dojo.addOnLoad(function() { dojo.connect(dojo.byId("refreshCaptcha"), "onclick", captchaRefreshFunction); });
A l'appel de la page cela fonctionne très bien, lorsque je clique sur le bouton pour rafraichir l'image il m'affiche le texte suivant en lieu et place de l'image :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <tr> <td id="captcha"><img src="<% out.println(WebAppPath+"/jcaptcha"); %>"></td> <td><input type='text' name='j_captcha_response' value=''></td> </tr> <tr><td>You can't see the picture ? <input type="button" id="refreshCaptcha" value="Click Here" />
'Erreur HTTP 200'.
Je ne comprend pas très bien....
Je vous remercie de vos aides précieuses !!!
Partager