javascript - 使用 JQuery 将未格式化的 JSON 文本添加到 ACE Editor Div

标签 javascript jquery html json ace-editor

我的网页中有一个 ACE 编辑器实例,我希望能够从文本文件填充它。为此,我设置了一个下拉菜单,其 onchange 函数映射到以下内容:

<script type="text/javascript">
    function popEx(example){
        $.getJSON('testing.txt', function(data){
            var curr_row = $(example).closest('tr');
            var elem = $(curr_row.children()[1]).children()[0];
            var editor = ace.edit(elem);

            editor.getSession().setValue(JSON.parse(data));
            //editor.getSession().setValue(JSON.stringify(data));
        });
    }
 </script>

我遇到的问题是将文本自动格式化为 JSON。注释掉的 stringify 可以很好地粘贴它,但我希望它以缩进的 JSON 样式自动格式化。目前,页面中断并给出错误 SyntaxError: JSON.parse: JSON 数据的第 1 行第 2 列出现意外字符。我确信有一个简单的方法可以做到这一点,有人有快速的解决方案吗?

最佳答案

JSON.stringify确实支持生成字符串的简单格式化

JSON.stringify(data, null, 4) // indent with 4 spaces
JSON.stringify(data, null, "RTFM") // indent with arbitrary string e.g "\t"

但请注意,这个问题与 ace 没有任何关系,只需在 google 中搜索 format json stringify javascript 即可更快地给出答案

关于javascript - 使用 JQuery 将未格式化的 JSON 文本添加到 ACE Editor Div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26050682/

相关文章:

javascript - 在处理程序中执行函数

javascript - DOM 操作在 AngularJS 中添加元素

javascript - jQuery 点击功能在 Firefox 上不起作用

javascript - 多次调用javascript函数

php - 使用 $_GET ['' ]; value inside $_POST ['' ] 并提交到同一页面并在同一页面显示

javascript - 使用 Ajax 删除查询成功时隐藏表中的行

javascript - Google Maps Api 检查地点是否在路线上

javascript - FancyBox - 使用 iframe 的箭头/导航

javascript - JQuery 显示和隐藏下拉列表中的 div

html - CSS 中的重叠和堆叠