使用jqueryparsinghtmlstring

我有一个来自Ajax加载源的HTMLstring。 在将HTML放入文档之前,我想从这个string中的对象(图像)中获取一些属性。

我有这样的东西:

$.ajax({ url: uri+'?js', success: function(data) { var htmlCode = $(data).html(); $('#otherObject').html(data); } }); 

我怎样才能从这个HTMLstring获取属性(例如src )?

我不是100%肯定,但不会

 $(data) 

产生一个jQuery的对象与DOM的数据,没有连接任何地方? 或者,如果它已经被parsing为一个DOM,你可以去$(“#myImg”,data),或者任何适合你需要的select器。

编辑
重读你的问题看起来你的“数据”已经是一个DOM,这意味着你可以去(假设你的DOM只有一个img,否则你将需要一个更精确的select器)

 $("img", data).attr ("src") 

如果你想访问src属性。 如果你的数据只是文本,它可能会工作

 $("img", $(data)).attr ("src") 

MarvinS.-

尝试:

 $.ajax({ url: uri+'?js', success: function(data) { var imgAttr = $("img", data).attr('src'); var htmlCode = $(data).html(); $('#imgSrc').html(imgAttr); $('#fullHtmlOutput').html(htmlCode); } }); 

这应该从数据加载整个html块到#fullHtmlOutput和图像的src到#imgSrc。

只是添加容器元素为您的img元素只是为了确保您的intersted元素不是第一个,在ie,ff

有一件事要注意 – 因为我今天确实有这个问题,取决于你的HTML jQuery可能会或可能不会parsing它。 jQuery不会将我的HTMLparsing成一个正确的DOM – 在较小的XML兼容文件上它工作正常,但是当我传回Ajaxcallback函数时,我得到的HTML(在页面中呈现)不会parsing。

最后,我只是在string手动search我想要的标签,不理想,但工作。