SemanticScuttle/includes/js/dojox/gfx/demos/beautify.html

48 lines
1.6 KiB
HTML

<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" >
<head>
<title>Beautify JSON</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style type="text/css">
@import "../../../dojo/resources/dojo.css";
@import "../../../dijit/tests/css/dijitTests.css";
</style>
<script type="text/javascript" src="../../../dojo/dojo.js" djConfig="isDebug: true"></script>
<script type="text/javascript">
trimPath = function(o){
if(o instanceof Array){
for(var i = 0; i < o.length; ++i){
trimPath(o[i]);
}
return;
}
if(("shape" in o) && ("path" in o.shape)){
o.shape.path = dojo.trim(o.shape.path.replace(/\s\s+/g, " "));
}
if("children" in o){
trimPath(o.children);
}
};
beautify = function(){
var t = dojo.byId("io");
var v = dojo.fromJson(t.value);
if(dojo.byId("path").checked){
trimPath(v);
}
t.value = dojo.toJson(v, dojo.byId("pprint").checked);
};
</script>
</head>
<body>
<h1>Beautify JSON</h1>
<p>Paste valid JSON in this textarea and receive a pretty-printed version of it. Use Firefox, if you want to be able to read comma-ended sequences (Python style).
Additionally it knows how to remove extra spaces from path elements.</p>
<p><textarea id="io" cols="80" rows="10" wrap="off"></textarea></p>
<p><button onclick="beautify()">Beautify!</button>
&nbsp;&nbsp;&nbsp;<input type="checkbox" id="path" checked="checked" />&nbsp;Process "path" elements
&nbsp;&nbsp;&nbsp;<input type="checkbox" id="pprint" checked="checked" />&nbsp;Pretty-print JSON</p>
<p><em>This program is a companion for inspector.html.</em></p>
</body>
</html>