0
我有這段代碼可以從HTML電子郵件中的鏈接標記中刪除所有空白。代碼運行良好,我得到的唯一問題是它似乎刪除頭標記內的內容,並刪除輸出上的開頭<body>
並關閉</body>
標記。有人能幫我理解發生了什麼事嗎?jquery刪除輸出上的頭部和身體標記
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標籤失蹤。雖然裏面的所有內容都停留。
不清楚你問的是什麼或預期的輸出是什麼。請發佈所有相關代碼本身,並提供預期結果 – charlietfl