使用jquery进行简单解析-ressource加载问题

使用jquery进行简单解析-ressource加载问题,jquery,html,dom,Jquery,Html,Dom,我正在访问一个api,它返回格式化为HTML的结果。这真的不可靠,因为我想要的只是数据。剩下的任务是将生成的HTML转换/解析为普通数据 我的代码是这样的: var htmlData = $('<div>').html(apidata); var personData = htmlData.find('table.result tr'); var dom = $('<div>').html(htmlData.replace(/<img[^>]+\>/i

我正在访问一个api,它返回格式化为HTML的结果。这真的不可靠,因为我想要的只是数据。剩下的任务是将生成的HTML转换/解析为普通数据

我的代码是这样的:

var htmlData = $('<div>').html(apidata);
var personData = htmlData.find('table.result tr');
var dom = $('<div>').html(htmlData.replace(/<img[^>]+\>/ig, ""));
虽然这是可行的,我最终得到了我需要的数据,但一旦我将apidata包装到div中,jquery/browser就急于帮助解析它。我猜想它正在创建一个dom元素,而浏览器处理其余的部分,从而产生了大量404。发生的情况是,apidata包含href、src等所有指向外部和内部数据映像、资源、脚本等的内容。一旦数据包装到内部,加载就开始了

如何停止链接的解析。我只希望加载dom结构,以便使用jquery/sizzle查询引擎获取数据。我不需要解析/加载apidata中嵌入的引用资源


编辑:我试图避免使用正则表达式或类似的方法来解析。使用jquery的整个想法是对html进行简单而强大的解析。

因此,我最终找到了一个解决方案,它允许我使用jquery的dom解析,但首先使用regex过滤输入/数据。这样我就保留了jquery的强大功能,只需要简单的正则表达式就可以过滤掉数据

我发现只加载了图像源,锚标记上没有href-这很有意义-因此我最终替换了apidata,如下所示:

var htmlData = $('<div>').html(apidata);
var personData = htmlData.find('table.result tr');
var dom = $('<div>').html(htmlData.replace(/<img[^>]+\>/ig, ""));

我仍然可以像往常一样查询dom,而不必获取所有的404。

响应的格式是什么?响应是json格式的,但json中的数据存储在一个名为Html的属性中。该属性是文本,包含有效的html