Jstree JSON 作为变量 Java

Jstree JSON as Variable Java

我有 JSON 字符串形式的数据,我将其设置为我的 servlet 中的一个属性。

    request.setAttribute("json", json);

我需要将它从 jstl 标签放入一个 jstree 中。我知道我不能将 jstl 直接放入 javascript 所以我做了以下操作:

        <p id = "jsonPData">${json}</p>

在我的 javascript 中,我有以下内容:

$(function () {
$("#jsonPData").hide();
var json = $("#jsonPData").text();

  $('#tree').jstree({ 'core' : {
        'data' : [
                  json
          ]
    } });

 });

当我不隐藏 p 元素时,数据很好,如果我将它复制并粘贴到 jstree 上的数据部分,它也可以正常工作。但是,当我将变量放入 jstree 数据时,它会将其全部放入 jstree 上的一个节点中。查看网络浏览器生成的代码后,它似乎在 json 变量中的所有数据周围添加引号,这将导致它只有一个节点。

关于我应该如何做有什么建议吗?还是另一种方式? 谢谢!

这就是最终的效果。我不得不删除 'data' 区域中的括号,并添加 eval(json) 而不是 json.

$(function () {
    $('#jsonPData').hide();
    var json = $("#jsonPData").text();
      $('#tree').jstree({ 'core' : {
            'data' : eval(json)             
        } });     

  });