为什么我的 p 标签在 parseHTML 之后被删除了?
Why is my p tags getting stripped out after parseHTML?
我正在使用 summernote,提取文本区域中的内容并尝试保存到数据库中。然而,在保存到数据库之前,我去掉了 img base64 的疯狂并替换了图像标签源。
但是,当我打印出从 textarea 接收到的原始来源时。 var mytext = $('#myid').summernote('code');
所有显示都很好..显示我的段落和图像(在 base64 中)。
但是,如果我通过 parseHTML 使用 jQuery、运行,并尝试读回数据,我会得到以下结果:
var mymodedtxt = $(mytext).html();
- 我只得到第一段文字(打印到控制台)
$(mytext).children().prop('outerHTML');
- 我只得到了我修改的新路径的第一张图片。
<img src="/path/to/22019_5859a7b13a78c.jpeg" />
在打印这些之前,我正在修改我的图像路径。我只是这样做的:
var i = 0;
$(mytext).find('img').each(function() {
$(this).attr('src',newpath[i]);
i++;
});
有人知道是什么原因造成的吗?为什么我的 p 标签被删除了?
当您对 jQuery 集合调用 .html()
时,它只会 returns 集合中第一个元素的 HTML。
您应该做的是将 HTML 字符串包装在容器元素中,例如一个DIV
,然后得到它的HTML:
var mymodedtxt = $("<div>", { html: mytext }).html();
我正在使用 summernote,提取文本区域中的内容并尝试保存到数据库中。然而,在保存到数据库之前,我去掉了 img base64 的疯狂并替换了图像标签源。
但是,当我打印出从 textarea 接收到的原始来源时。 var mytext = $('#myid').summernote('code');
所有显示都很好..显示我的段落和图像(在 base64 中)。
但是,如果我通过 parseHTML 使用 jQuery、运行,并尝试读回数据,我会得到以下结果:
var mymodedtxt = $(mytext).html();
- 我只得到第一段文字(打印到控制台)
$(mytext).children().prop('outerHTML');
- 我只得到了我修改的新路径的第一张图片。
<img src="/path/to/22019_5859a7b13a78c.jpeg" />
在打印这些之前,我正在修改我的图像路径。我只是这样做的:
var i = 0;
$(mytext).find('img').each(function() {
$(this).attr('src',newpath[i]);
i++;
});
有人知道是什么原因造成的吗?为什么我的 p 标签被删除了?
当您对 jQuery 集合调用 .html()
时,它只会 returns 集合中第一个元素的 HTML。
您应该做的是将 HTML 字符串包装在容器元素中,例如一个DIV
,然后得到它的HTML:
var mymodedtxt = $("<div>", { html: mytext }).html();