jstree无法正常工作

时间:2017-01-31 04:12:25

标签: php jstree

我有这个数组:

$arr = array(
    '17-GUIDO HUMBERTO -3 ', 
    array( 
        '2-José-3'
    ),
    array(
        array(
            '18-juan andres-3'
        ),
    ),
    '17-luis -3 '
);

我有这个功能:

function listArr($arr) {
    $html = '<ul>';
    foreach ($arr as $item) {
        if (is_array($item)) {
            $html .= listArr($item); // <<< here is the recursion
        } else {
            $html .= '<li>' . $item . '</li>';
        }
    }

    $html .= '</ul>';
    return $html;
}
echo(listArr($tree));

然后我添加HTML:

<div class="row">
            <div class="col-md-12">
                <div class="row">
                    <div id="jstree">
                        <?php
                            echo(listArr($tree));
                        ?>
                    </div>
                </div>
            </div>
            <!-- /.col-md-12 -->
        </div>

如何将18-juan andres-3置于17-GUIDO HUMBERTO -317-luis -318-juan andres-317-luis -3

18-juan andres-3 下{/ 1}} 17-GUIDO HUMBERTO -3 (这是最高层)

如何使用jstree使数组正常工作?请帮助谢谢!!

1 个答案:

答案 0 :(得分:0)

问题在于您的阵列,因为它们处于不同的级别。将你的数组变为这个:

$arr = array(
        '17-GUIDO HUMBERTO -3 ',
        array(
                '2-Jose-3'
        ),
        array(
                'label',
                array(
                        '18-juan andres-3',
                        array('17-luis -3 '),
                ),
        ),

);

并且我没有看到任何$tree声明。

调用如:

echo(listArr($arr));

<强>输出:

17-GUIDO HUMBERTO -3
  -- 2-Jose-3
  -- label
  ---  18-juan andres-3
  ----   17-luis -3