私はウェブサイトを持っています。jsTreeコンテキストメニューがRMBをクリックしたときにツリーノードに表示されない
2ページあります。
pg1は単純な環境でjsTreeを使用するためのものです。ここではうまくいきます。
pg2は制作アプリケーションです。ここで私はこの問題を抱えています。
同じコードが両方のページにあり、jsTreeは他のすべての目的でうまく機能します。私は最初からツリーを構築しましたが、今は1つのコンテキストメニュー項目を追加するだけです。
#1の違いは制作ページです。jsTreeはjqWidget jqxWindowでホストされています。
両方のページはpython-web2pyでホストされていますが、デモページは実際にはweb2pyページではありません。デモはweb2pyコントローラを経由しますが、ページはまっすぐなhtml/web2pyのjavascriptフレームワークやビューオブジェクトは含まれていません。デモページでソースを見ると、編集者に表示されているようにほぼ正確に表示されます。
jqxWidgetsまたはweb2pyがこの問題の根源であるとの意見にあなたを導くものは何もありません。
。
これは問題のコードであり、両方のページで同じです。
, 'contextmenu': {
'items': function (node) {
var tmp = $.jstree.defaults.contextmenu.items();
delete tmp.rename;
delete tmp.remove;
delete tmp.ccp;
tmp.create.label = "New Folder";
return tmp;
}
}
, 'plugins': ['contextmenu']
。
デモページでjsTreeのノードをクリックしても問題ありません。
プロダクションページでjsTreeのノードをクリックしても何も起こりません。全く何もない。コンテキストメニューは、ブラウザにレンダリング/表示されません。プロダクションjsTreeがRMBクリックを聞いていないかのようです。
編集:これも実現したばかりです。 RBMをクリックすると、ブラウザの標準コンテキストメニューが表示されます。jsTreeノードのを除く。ノード上には何もありません。これはjqWidgetsやweb2pyとは関係がないと私に信じさせてしまう傾向があります。
コンテキストメニューを表示してjsTreeをブロックすることができますか?スタイル要素から欠けてもいいですか?一部のcontextmenu.jsファイルにプロダクションページが表示されないのですか?
あなたはjqWidgets思いますかweb2pyはのルートであることができれば、この
- A)私は人民元のクリックパスを許可するようにはJavaScriptを養成行う方法ポイント&
- B)を証明行くのですかjsTree?
コンソールにエラーがありますか? –
残念ながら、しかし、私はこれを試してみるように頼んだので。私がconsole.log( "HELLO")を置くと、アイテム:関数コンソールは、私がRMBをクリックすると "HELLO"を記録します。これで、jsTreeでRMBがトリガーされていることがわかりました。それは良い一歩です。 – Steve
コンテキストメニューは、クラス 'vakata-context jstree-contextmenu jstree-default-contextmenu'を持つ' ul'要素です。ノード上でマウスを右クリックして削除すると追加されます。右クリックし、DOM(Elementsコンソールタブ)でその要素を検索してみてください。多分それはそこにあり、目に見えません。 –