23

我需要将srchtml 图像标记从相对 url 更改为绝对 url。

我正在使用以下代码。urlRelative 和 urlAbsolute 已正确创建,但我无法修改最后一行中的图像。

我的脚本可能有什么问题?

..... // 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
            });
4

8 回答 8

61

像这样试试

$(this).attr("src", urlAbsolute)
于 2013-09-18T08:51:19.977 回答
3

尝试$(this).attr("src", urlAbsolute);

于 2013-09-18T08:51:45.557 回答
3
jQuery("#my_image").attr("src", "first.jpg")
于 2014-04-25T10:48:59.967 回答
2

将此代码用于 src

$(this).attr("src", urlAbsolute);

演示

于 2013-09-18T08:53:06.590 回答
1

您的代码可以简化很多

$('img', resp).attr('src', function(idx, urlRelative ) {
    return self.config.proxy_server + self.config.location_images + urlRelative;
});
于 2013-09-18T08:51:20.110 回答
1

而不是下面的代码:

$(this).attr("src").replace(urlRelative, urlAbsolute);

用这个:

$(this).attr("src",urlAbsolute);
于 2013-09-18T08:52:24.380 回答
0

Javascript 中的 replace 方法返回一个值,并且不作用于现有的字符串对象。请参阅:https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace

在你的例子中,你将不得不做

$(this).attr("src", $(this).attr("src").replace(...))
于 2013-09-18T08:55:03.957 回答
0

更改图像验证码刷新

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);
    });
于 2017-01-31T07:52:10.403 回答