21

我有一个 HTML 字符串,它混合了文本和 HTML 标记,我正在尝试将其转换为对象。因此,例如,我的 HTML 字符串如下所示:

Pay using your <img src="visa-src" /> or your <img src="mc-src" />

我正在使用 jquery 1.8.0 并尝试使用,$(HTMLSTRING)但是由于某种原因,它会删除锚点之前的文本并提供其余部分,即带有孩子的对象,#img, #text#img第一个文本(使用您的付款)被剥离

但是,让我们说如果输入是:

<img src="visa-src" /> or your <img src="mc-src" />

它正确地为我提供了包含三个子元素的对象#img、#text 和#img。

还有其他方法可以正确转换吗?

更新:我最终看到的是更改 HTML 字符串中的每个 img src 并在其中添加一些主机。

谢谢。

4

2 回答 2

31

$.parseHTML()将字符串解析为 DOM 节点数组

要创建您需要添加的对象$()

$($.parseHTML(yourString))

看看这个小提琴:http: //jsfiddle.net/j05ucnfv/

参考:http ://api.jquery.com/jQuery.parseHTML/

于 2015-09-17T13:22:06.250 回答
15

利用

$.parseHTML()

代替

$(HTMLSTRING)

请参阅下面的JS代码..

var HTMLSTRING = 'Pay using your <img src="visa-src" /> or your <img src="mc-src" />';

var HTMLSTRING1 = '<img src="visa-src" /> or your <img src="mc-src" />';

console.log($.parseHTML(HTMLSTRING));
console.log($.parseHTML(HTMLSTRING1));

演示小提琴

于 2013-10-18T06:57:10.903 回答