ExtJS中格式化json显示
来源:互联网 发布:mac如何玩魔兽世界 编辑:程序博客网 时间:2024/06/16 05:06
, { xtype: 'button', text: '格式化', iconCls: 'icon-edit', colspan: 2, width: 100, margin: "-23 0 0 70", listeners: { 'click': { fn: this.formatJson, scope: this } }}
formatJson : function(options) { var dataform = this.down('dataform'); var json=dataform.down("[name='actConfigValue']").getValue(); var reg = null, formatted = '', pad = 0, PADDING = ' '; // one can also use '\t' or a different number of spaces // optional settings options = options || {}; // remove newline where '{' or '[' follows ':' options.newlineAfterColonIfBeforeBraceOrBracket = (options.newlineAfterColonIfBeforeBraceOrBracket === true) ? true : false; // use a space after a colon options.spaceAfterColon = (options.spaceAfterColon === false) ? false : true; // begin formatting... if (typeof json !== 'string') { // make sure we start with the JSON as a string json = JSON.stringify(json); } else { // is already a string, so parse and re-stringify in order to remove extra whitespace json = JSON.parse(json); json = JSON.stringify(json); } // add newline before and after curly braces reg = /([\{\}])/g; json = json.replace(reg, '\r\n$1\r\n'); // add newline before and after square brackets reg = /([\[\]])/g; json = json.replace(reg, '\r\n$1\r\n'); // add newline after comma reg = /(\,)/g; json = json.replace(reg, '$1\r\n'); // remove multiple newlines reg = /(\r\n\r\n)/g; json = json.replace(reg, '\r\n'); // remove newlines before commas reg = /\r\n\,/g; json = json.replace(reg, ','); // optional formatting... if (!options.newlineAfterColonIfBeforeBraceOrBracket) { reg = /\:\r\n\{/g; json = json.replace(reg, ':{'); reg = /\:\r\n\[/g; json = json.replace(reg, ':['); } if (options.spaceAfterColon) { reg = /\:/g; json = json.replace(reg, ': '); } $.each(json.split('\r\n'), function(index, node) { var i = 0, indent = 0, padding = ''; if (node.match(/\{$/) || node.match(/\[$/)) { indent = 1; } else if (node.match(/\}/) || node.match(/\]/)) { if (pad !== 0) { pad -= 1; } } else { indent = 0; } for (i = 0; i < pad; i++) { padding += PADDING; } formatted += padding + node + '\r\n'; pad += indent; }); dataform.down("[name='actConfigValue']").setValue(formatted); // return formatted;},
阅读全文
0 0
- ExtJS中格式化json显示
- extjs显示格式化返回JSON格式的日期
- 页面中JSON数据格式化显示
- JS:Json格式化显示
- json串格式化显示
- javascript格式化json显示
- ExtJs中grid数据格式化
- ExtJS的Grid如何格式化时间显示
- Jquery格式化显示Json数据
- json格式化显示(agular2)
- VIM中格式化json
- extjs中查看json字符串
- EXTJs 实现表格数据显示-----JSON
- 解决easyui 中显示Date类型数据为[object Object],json中格式化日期
- ExtJs中submit提交表单返回json字符不能再前台显示的解决方法
- notepad++中json格式化工具
- 如何对json代码进行格式化显示
- 用javascript格式化json以便显示阅读
- 13.3. Swap
- 常量与变量
- Centos下替换yum源为阿里云源
- C++学习笔记-从C到C++
- Spring Security(18)——Jsp标签
- ExtJS中格式化json显示
- oracle
- 接口
- 深入理解正则表达式
- MyBatis查询单表返回List<Bean>
- 智能电器中的大数据和人工智能
- Deep Learning 最优化方法之AdaGrad
- linux screen 命令详解(后台执行linux命令)
- 记一次ThinkPHP源码审计