J'ai besoin de changer la src
pour une image html d'une URL relative à une URL absolue.
J'utilise le code suivant. UrlRelative et urlAbsolute sont créés correctement mais je ne peux pas modifier l'image dans la dernière ligne.
Qu'est-ce qui pourrait être erroné dans mon script?
..... // other code here request.done(function(resp) { var imgTags = $('img', resp).each(function() { var urlRelative = $(this).attr("src"); var urlAbsolute = self.config.proxy_server + self.config.location_images + urlRelative; $(this).attr("src").replace(urlRelative, urlAbsolute); // problem here });
Essayez comme ça
$(this).attr("src", urlAbsolute)
Essayez $(this).attr("src", urlAbsolute);
jQuery("#my_image").attr("src", "first.jpg")
Utilisé ce code pour src
$(this).attr("src", urlAbsolute);
Démonstration
Au lieu du code ci-dessous:
$(this).attr("src").replace(urlRelative, urlAbsolute);
Utilisez ceci:
$(this).attr("src",urlAbsolute);
Votre code peut simplifier beaucoup
$('img', resp).attr('src', function(idx, urlRelative ) { return self.config.proxy_server + self.config.location_images + urlRelative; });
La méthode de remplacement dans JavaScript renvoie une valeur et n'agit pas sur l'objet de chaîne existant. Voir: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace
Dans votre exemple, vous devrez faire
$(this).attr("src", $(this).attr("src").replace(...))
Changer l'image captcha refresh
Html:
<img id="captcha_img" src="http://localhost/captcha.php" />
Jquery:
$("#captcha_img").click(function() { var capt_rand=Math.floor((Math.random() * 9999) + 1); $("#captcha_img").attr("src","http://localhost/captcha.php?" + capt_rand); });