問題タブ [jqtree]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - jqtreeでMutationObserverを使用するには?
私はjqtreeを持っており、 AJAXを使用して変更されたノードを送信する必要があります。そのためには、再帰関数を使用してJSON全体を読み取りました。問題は、影響を受けたノードを送信したいだけです。ツリーはドラッグ アンド ドロップであるため、ユーザーは一度に 1 つの項目しか変更できません。
明確化:
ページが読み込まれ、構造も同様です (firebug を確認してください)。
次に、ユーザーは次のものを選択してドラッグchild1
しnode2
ます。
vpais
そうすることで新しいJSONが生成され、 (親)とvfilhos
(子)に分離・分類されます
ただし、ご覧のとおり、変更されるノードは 1 つだけなので、すべてを送信する必要はありませんparents
(children
一度に 1 つのアイテムしかドラッグできないため、常に送信されます)。
ここで SO で男が MutationObserver について教えてくれました。理論的には素晴らしいですが、F をどのように使用するのか?!?、それは非常に複雑です。理論はわかっていますが、それを使用していますは別の話ですが、私を助けてくれますか?
@マウザーに感謝
ここまで作ってくれてありがとう:)
私のコード:
javascript - ノードがグループから離れたことを検出するにはどうすればよいですか? JqTree
私はこのツリーを持っていて、ノードが別のノードに移動するたびid
に achild
とそのを送信するparent's
ようにしましたが、子が親の外に移動したときも検出したいと思います。
firebugで確認してください
明確化:
たとえば、次の 2 つのノードがあります。
node1 (親なし)
node2 (親なし)
次に、私はnode1
中node2
に移動します:
(次に、次を使用して位置を確認しますif (event.move_info.position == 'inside');
:)
node2 (親なし)
ノード (ノード 2)
node1
外に移動するときも確認したいnode2
:
しかし、ありません event.move_info.position == 'outside'
から:
node2 (親なし)
ノード (ノード 2)
に:
node1 (親なし)
node2 (親なし)
あなたは私を啓発することができますか?
前もって感謝します。
jquery - jqTree getState および setState -- 動的に作成されたツリー ノードの保存/復元
私は jQuery ウィジェット jqTree をナビゲーションとして、また動的に作成されたネストされた要素のアセンブリとして利用しています。これは完全な機能を備えており、私が見た jQuery の世界では優れたコンポーネントの 1 つです。
https://github.com/mbraak/jqTree
setState
しかし、動的に作成されたノードを保存するために、特にページが更新されたときにそれを活用することはできません。このようなフォーラムのような準標準的な質問に Github の「問題」を使用するのは嫌いなので、皆さんにお願いします。
フォームを使用して、Web アプリに関する特定のデータを保存するだけでなく、そのフォームからの結果の一部を利用して、jqTree のインスタンスに新しいツリー ノードや子を設定します。これは、jqTree のネイティブ関数addNodeAfter
とappendNode
. 問題は、フォームが送信され、それに応じてページがリセットされるときの状態を取得および設定することです。
開いている/閉じているネストされたノードの最後の状態を保存するためのパラメーターがありますが、これはsaveState: true,
うまく機能しますが、フォームのライフサイクル中にフォームによって動的に生成されたノード/子は、フォームが送信されてページが更新されると破棄されます。誰かが開発者にこれらの行に沿って何かを尋ねます:
https://github.com/mbraak/jqTree/issues/301
しかし、私が答えに最も近いのは、次の引用です。
実行getState
するaddNodeAfter
と、次のような console.log() 結果が得られます。
{"open_nodes":[1],"selected_node":[4]}
の同じ選択/作成ノード シナリオでsetState
、コンソールに表示されます。
{"type":"tree","timeStamp":1440016021305,"jQuery111307363375960849226":true,"isTrigger":3,"namespace":"refresh","namespace_re":{},"target":{"jQuery111307363375960849226":16}}
つまり、私が見る限り、それらの命名法には直接的な関係がなく、ほぼ完全に異なる応答です。
そして、フォームを送信し、同時に新しいノード データを保存しようとすると、次のようになります。
データを保存したり、コンソールの例を取得したりしません。コメントアウトされたステートメントに注意してe.preventDefault();
ください -- コメントを戻すと、コンソールでこれら 2 つの非常に異なる結果が得られますが、もちろん、フォームはトリガーされず、データが保存されていないことがわかります。
SO -- 2 つの質問があると思います。
getState
1.) jqTreeとjqTreeでのこれら 2 つの非常に異なる結果の関係は何setState
ですか? と:
2.) フォームを送信し、新しく作成されたツリー ノードを保存し、ページのリロード時にツリーを再設定するにはどうすればよいですか?
ここで長文になってしまい申し訳ありません。ご関心をお寄せいただき、ありがとうございます。
jquery - jqtree クリック イベントが部分ビューで機能しない
カテゴリ別に製品をフィルタリングするために jqtree を使用しています。カテゴリを初めてクリックしたときに機能します。カテゴリを選択したら、検索ボタンをクリックして、部分的に表示されているアイテム データを表示します。次に、別のカテゴリを選択して別のデータ セットを検索すると、クリック イベントが機能しなくなります。
私が使用したjqueryコード:
製品を検索するためのコントローラのコード
javascript - jqtreeはloadDataFromUrl関数でデータをロードできません
ここに私のコードがあります
しかし、コールバック関数は呼び出されず、サブツリーはノードにロードされません..私はajaxでデータを別々に試してロードしましたが、結果は次のようなものです:
それでもloadDataFromUrlが機能せず、サブツリーがいっぱいになります..誰かが私のコードの何が問題なのか教えてくれますか、JQTreeでサブツリーをロードする実際の例を見せてくれますか?
javascript - Json からツリーを取得する jqTree:「キャッチされていない TypeError: $(...).tree は関数ではありません」
jqTree
JSONデータをツリー形式で表示するために使用しています。のデモを実装しjqTree
ているときに、次のエラーが発生します。
「キャッチされていない TypeError: $(...).tree は関数ではありません」
javascript - 1 つの .js ソース ファイル (jqTree) から変数にアクセスし、別の .js ファイル内からメソッドをオーバーライドする
(JS、jQuery、jqTree の新機能)
ある .js ファイル( tree.jquery.js )のメソッド( JqTreeWidget.prototype.openNode
)を別の(自分の) ファイルでオーバーライドしようとしています。custom.js
一般的にjsメソッドをオーバーライドするには、それを再定義する必要があることを読みました。したがって、メソッドでそれを実行しようとしていますが、元のメソッド( )を持つ変数へのアクセスに固執していると思います。課題は、元のメソッドが(ソース)にあり、オーバーライドを実行したい自分の他のファイルとは別であることだと思います。JqTreeWidget
tree.jquery.js
custom.js
この質問の目標は、私の中にこのようなものを書くことができるようにすることです(このcustom.js
質問<reference to JqTreeWidget.prototype.openNode>
への回答になります):
tree.jquery.js
実際にソースにハッキングすることなく、オーバーライドを行う最も非侵入的な方法だと思います。
http://codepen.io/cellepo/pen/LGoaQxcustom.js
で私を参照してください
別のソースtree.jquery.js
は、その codepen の JS 設定で外部から追加されます。
ソース ファイル ( ) 内の変数に(自分のcustom.js
ファイル内から) アクセスするにはどうすればよいですか? JqTreeWidget
tree.jquery.js
それは可能ですか?JqTreeWidget
の外側のスコープにありませtree.jquery.js
んか、それともグローバル変数ではありませんか? 私はそれを望んtreeContainer.tree.prototype
でいましたが、今のところ運がありません...
ありがとう!