gpt4 book ai didi

javascript - Jquery 删除输出中的 head 和 body 标签

转载 作者:行者123 更新时间:2023-11-28 10:49:55 32 4
gpt4 key购买 nike

我有这段代码,可以删除 HTML 电子邮件中链接标记中的所有空格。该代码运行良好,我遇到的唯一问题是它似乎删除了 head 标签内的内容并删除了开头 <body>并关闭</body>输出上的标签。有人可以帮助我了解发生了什么事吗?

JSBin here .

我的 JavaScript 代码如下:

$('#submit').click(function(){

var original = $('#replace').val();

var output = $('<html/>').html(original);
output.find('a').each(function() {
var self = $(this);
var href = self.attr('href');
if (href) {
self.attr('href', href.replace(/[\n\r]/g, ''));
self.attr('href', href.replace(/\s+/g, ''));
}
});

$('#result').text(output.html());

});

如果我运行 JSbin 并输入一些 HTML,结果如下:

输入

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE" />
<meta name="format-detection" content="telephone=no" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width">
<meta name="robots" content="noindex" />
<title>TEST</title>
<style type="text/css">
table td {


</style>
</head>
<body yahoo="fix" style="-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; margin: 0; min-height: 1000px; padding: 0; width: 100%; background:#ffffff;" bgcolor="#FFFFFF">
<div>test</div>

</body>
</html>

输出

    
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="SKYPE_TOOLBAR" content="SKYPE_TOOLBAR_PARSER_COMPATIBLE">
<meta name="format-detection" content="telephone=no">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width">
<meta name="robots" content="noindex">
<title>TEST</title>
<style type="text/css">
table td {


</style>


<div>test</div>


正如您所见,HTML 标记、head 标记和 body 标记丢失了。虽然里面的内容全部保留下来。

最佳答案

不确定这是否是您想要的,但这似乎是您的 html 选择失败。尝试一下

 var output = $(document.documentElement);

地点:

  var output = $('<html/>').html(original);

现在您可以从输出的文档根目录中选择所有节点。也许我理解错了你的问题

关于javascript - Jquery 删除输出中的 head 和 body 标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35363135/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com