Перетащите из jsTree в поле ввода - PullRequest
1 голос
/ 06 февраля 2011

У меня есть jsTree файловой системы, папок и файлов, и я хотел бы перетащить файловый узел из дерева и поместить его в поле input, вставив полный путь в поле формы.

В настоящее время, когда я пытаюсь перетащить любой узел из дерева в поле формы, я возвращаю URL-адрес веб-страницы вместе с меткой хеша, например, https://example.com/#.Если я изменю ссылку href для данных узла, хэш изменится на новый href, но я все равно получу протокол и хост (https://example.com/newHref).

Если предположить, что модификация, которую я описал, возможна, как бы янастроить jsTree и форму для этого?

Спасибо за ваш совет.

1 Ответ

1 голос
/ 12 февраля 2011

При использовании источника данных JSON при добавлении атрибута href в список attr списка data представляется полезным использовать протокол file://, например:

{
  "data" : {
     "icon" : "/js/_demo/folder.png",
     "title" : "workspace",
     "attr" : {
        "href" : "file:///home/areynolds/workspace"
     }
  },
  "attr" : {
     "rel" : "folder",
     "id" : "/home/areynolds/workspace"
  },
  "state" : "closed"
}

Затем ссылку на узел можно перетащить в поле HTML input.

Можно либо использовать file:// href как есть, либо использовать немного JavaScript или jQuery для очистки пути.

При использовании источника данных HTML, используя file://в якоре href достигается тот же результат.

...