.jstree () или .tree () и как заставить его работать - PullRequest
2 голосов
/ 08 июня 2010

Глупый вопрос. Многие примеры использования jstree, которые я нахожу в Интернете, используют синтаксис $ ('# someTreeId'). Tree (), тогда как демонстрационная версия на сайте jstree постоянно ссылается на синтаксис $ ('# someTreeId'). Jstree () .

Когда я использую .jstree (), я получаю сообщение об ошибке браузера, говорящее, что это не функция. Но когда я использую .tree, я едва продвигаюсь дальше: он только достигает «Загрузка ...».

До сих пор я не включал никаких параметров в скобки функций. Я предполагал, что jstree создаст базовое дерево, если я включу UL в HTML. Но это не так.

Ответы [ 3 ]

3 голосов
/ 17 июня 2010

Может быть, используйте этот трюк, чтобы найти точные имена функций плагина jstree.

Откройте jquery.jstree.js, проверьте ключевое слово "$ .fn. * =" Или "jQuery.fn. * =" Или "jQuery. * =" Или "$. * =" * 1003.*

«*» будет именами функций.

Не усложнять, в плагине jstree имя функции: jstree () .Ошибка не является функцией , потому что плагин не загружен.Проверьте правильность пути сценария к jstree.js.

3 голосов
/ 16 июня 2010

Я бы всегда шел с документацией с сайта плагина, а не со стороны.Сторонняя документация может не обновляться, тогда как веб-сайт плагина действительно должен быть.

Я не сталкивался с проблемой, когда jstree выдает ошибку «Это не функция».Если вызов jstree завершится неудачно, ваша разметка не будет стилизована как дерево, что объясняет, почему базовое дерево не создается.

Что касается причины возникновения ошибки, первое, что я хотел бы проверить, это то, что все необходимые библиотеки JavaScript указаны в правильном порядке.Например, что-то вроде следующего должно быть в теге вашей страницы (при необходимости измените пути):

<script type="text/javascript" src="js/_lib/jquery.js"></script>
<script type="text/javascript" src="js/jquery.jstree.js"></script>
1 голос
/ 08 августа 2013

Я обнаружил, что на самом деле эта строка вызывает проблему

@Scripts.Render("~/bundles/jquery") 

в _layout

...