I need to prettify some JSON to display within an HTML section.
The working javascript code I use is..
function transformJson(k,
Simply adding this after JSON.parse did the trick..
var newObj = {};
for(var attr in jsonObj){
if( jsonObj[attr].constructor != Object && attr != 'href'){
newObj['<a href="/documentation#'+attr+'">'+attr+'</a>'] = jsonObj[attr];
}else{
newObj[attr] = jsonObj[attr];
}
}
(And then clearly JSON.stringify applied to newObj)
Topmost object is passed to function provided as parameter for JSON.parse() under empty key.
You need to include that in your transformJson
:
function transformJson(k, v) {
if (k === 'href' && typeof v === 'string') {
var label = v.replace(/&/gi, '&');
return '<a href=' + v + '>' + label + '</a>';
} else if (k === '') {
for (var x in v) {
//skipping 'href' because it's handled by previous 'if'
if (x !== 'href' && typeof v[x] === 'string') {
var label = v[x].replace(/&/gi, '&');
v[x] = '<a href=/documentation#' + x + '>' + label + '</a>';
}
}
}
return v;
}