diff --git a/UI/WebServerResources/js/Mailer/Message.service.js b/UI/WebServerResources/js/Mailer/Message.service.js
index c28a1cb6b..1058e405c 100644
--- a/UI/WebServerResources/js/Mailer/Message.service.js
+++ b/UI/WebServerResources/js/Mailer/Message.service.js
@@ -737,13 +737,16 @@
data.encrypt = true;
}
if (data.isHTML) {
- // Sanitize HTML replies to properly display quoted content in CKEditor
- var html = angular.element('
' + data.text + '
');
- html.find('meta').remove();
- html.find('link').remove();
- html.find('base').remove();
- html.find('title').remove();
- data.text = html.html();
+ // Sanitize HTML replies to properly display quoted content in CKEditor.
+ // Don't use the DOM to avoid triggering any event.
+ var html = data.text;
+ html = html.replace(/<\/?html[^>]*>/g, '');
+ html = html.replace(/<\/?body[^>]*>/g, '');
+ html = html.replace(/]*>.*<\/meta>/g, '');
+ html = html.replace(/]*>.*<\/link>/g, '');
+ html = html.replace(/]*>.*<\/base>/g, '');
+ html = html.replace(/]*>.*<\/title>/g, '');
+ data.text = html;
}
angular.extend(message.editable, data);