Jquery 如何在匿名函数中更改所有图像的src属性

Jquery 如何在匿名函数中更改所有图像的src属性,jquery,html,ajax,Jquery,Html,Ajax,我正在尝试使用$.get函数获取html页面。此页面的内容包含在我的“数据”对象中。我想做的是解析我的数据并更改img标记的所有src属性。 这个代码几乎可以工作。我有权访问我的src,但对象“数据”最终没有更新 $.get("url/to/page.html", function(data){ $("img", data).each(function() { $(this).attr("src", newSrc); }); }); 所以“数据”是page.ht

我正在尝试使用$.get函数获取html页面。此页面的内容包含在我的“数据”对象中。我想做的是解析我的数据并更改img标记的所有src属性。 这个代码几乎可以工作。我有权访问我的src,但对象“数据”最终没有更新

$.get("url/to/page.html", function(data){
    $("img", data).each(function() {
        $(this).attr("src", newSrc);
    });
});
所以“数据”是page.html的html内容,我想更改SRC的 “newSrc”是一个带有源的新url的变量。 如果我最后打印数据,我没有新的src

编辑: 因此,解决方案是:

$.get(this.htmlasset.get('url_asset'), function(data) {
    var $data = $(data);
    $data.find('img').each(function(){
        $(this).attr("src", newSrc);
    });
    $('#redactor').setCode($('<div></div>').append($data).html());
$.get(this.htmlasset.get('url\u asset'),函数(数据){
var$data=$(数据);
$data.find('img')。每个(函数(){
$(this.attr(“src”,newSrc);
});
$('#redactor').setCode($('').append($data.html());

Thank's

尝试使用jQuery replace like替换数据中的all
src

data = data.replace(/oldstring/g, "newstring");

您需要先将HTML转换为DOM对象,然后才能对它们进行操作

$.get("url/to/page.html", function(data){
    var $data = $( data ).find( 'img' ).each(function() {
        $(this).attr("src", newSrc);
    });

    // $( 'body' ).append( $data );  or whatever you want to do with it
});

请注意,您应该从此处开始使用
$data
,因为它包含修改过的DOM元素。
数据
仍然包含原始HTML字符串。

您必须使用更改的数据,而不是旧数据

$.get("url/to/page.html", function(data){
    var $elem = $('<div>').html(data);
    $elem.find('img').attr("src", newSrc);

    // now write the element in your page
    $elem.appendTo('body');
});
$.get(“url/to/page.html”,函数(数据){
var$elem=$('').html(数据);
$elem.find('img').attr(“src”,newSrc);
//现在在页面中编写元素
$elem.appendTo(‘body’);
});

什么是数据?什么是新闻RC?你想从数据中得到什么,我从来没有在选择器中看到过数据对象,你想得到的是page.html的内容。然后for each将获得我的html内容(数据)的所有“img”。而newSrc只是我要更新的一个新url。您需要更清楚地表明,您希望更改从
get()
请求收到的html中的所有img
src
属性,而不是用从
get()中得到的内容更新当前页面上的所有img
src
属性
request.噢,很抱歉我认为是这样,我将更新我的POST,我可以将DOM对象转换为Html吗?因为我正在使用一个插件(redactor)来获取Html内容。我可以更改我的属性,但我找不到如何将DOM转换为Html。
$('').append($data.Html();