diff --git a/libs/jsonTree/jsonTree.js b/libs/jsonTree/jsonTree.js
index 51bbf01..679c3b7 100644
--- a/libs/jsonTree/jsonTree.js
+++ b/libs/jsonTree/jsonTree.js
@@ -220,21 +220,25 @@ var jsonTree = (function() {
var self = this,
el = document.createElement('li'),
labelEl,
+ wrapper = document.createElement('div'),
template = function(label, val) {
- var str = '\
+ wrapper.innerHTML = '\
\
- "' +
- label +
- '" : \
+ : \
\
\
- ' +
- val +
- '' +
- (!isLast ? ',' : '') +
- '';
-
- return str;
+ \
+ ' + (!isLast ? ',' : '') + '\
+ ';
+
+ var labelNode = wrapper.querySelector('.jsontree_label');
+ var valueNode = wrapper.querySelector('.jsontree_value');
+
+ // Escape HTML characters in the label and value to prevent XSS attacks
+ labelNode.textContent = '"' + label + '"';
+ valueNode.textContent = val;
+
+ return wrapper.innerHTML;
};
self.label = label;