問題タブ [w2ui]
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.
checkbox - w2uigridを使用して横にラベルが付いたチェックボックスをレンダリングする方法
render プロパティを使用してみましたが、目的の外観にすることができませんでした。以下のコードは、チェックボックスのみをレンダリングし、ラベルはレンダリングしません。モデルが提供するテキストに応じてラベルを付ける必要があります。渡される内容に応じて、横に動的なテキスト/キャプションを表示するには、列「値」が必要です。
javascript - Ember およびネイティブ Javascript イベント
いくつかのサードパーティの jQuery ライブラリを使用する Ember アプリがあります。それらの 1 つは、堅牢なテーブルを作成するための W2ui です。これらのテーブルを didInsertElement フック内で初期化します。ボタンが正しく機能しないことを除けば、テーブルは適切にレンダリングされます。一例を次に示します。
上記の console.log は機能していますが、問題は、Ember がサードパーティ ライブラリのイベント リスナーに干渉しているように見えることです。el.click メソッドがどこかで失われているようです。Ember 以外のライブラリを使用すると、正常に動作します。私の質問は、大きなサードパーティ ライブラリ (独自のアクションとリスナーを持つ) を Ember に適切に組み込むにはどうすればよいかということです。あなたが私を正しい方向に導いてくれることを願っています。ありがとう。
jquery - ngDialog で w2grid を使用する
ポップアップ ngDialog (astore.github.io/ngDialog など) で w2grid (w2.com) を使用すると、通常のページで使用する場合とは異なるコードが必要になる理由を理解しようとしています。Angular 1.4.8 を使用しています。
通常のページ HTML では、コントローラーを指定する div 内に w2grid 用の div を予約します。
CtrlViewEdit コントローラー コンストラクター関数で、div を見つけ、その上に w2grid を構築します。
これはうまくいきます。ページにグリッドが表示されます。
他の場所では、グリッド付きのモーダル ダイアログをポップアップさせたいと考えています。同様に、ダイアログのテンプレートには、ダイアログのコントローラーの div 内にグリッドの div があります。
このテンプレート (PopupSelectRetailer.html) は、次のようなコードで ngDialog.open に渡されます。
上記と同様に、ダイアログのコントローラー (PopupSelectRetailer) が単にこれを行う場合:
ダイアログはグリッドなしで表示されます。実際に機能させるには、コントローラーでのように、ngDialog が開かれるまで、ダイアログでの w2grid の作成を延期する必要があります。
私たちの質問は「なぜ?」です。Angular がテンプレートを正常にロードする場合と、ngDialog 内でロードする場合に違いがあるのはなぜですか?
通常の場合、グリッド用に予約された div はコントローラー コンストラクターの実行時に DOM にあるように見えます。そのため、jquery はその時点でそれを見つけて w2grid に置き換えることができます。
一方、ngDialog の場合、グリッド用に予約された div が DOM にある前にコントローラー コンストラクターが実行されているように見えるため、jquery が検索して w2grid に置き換えるものは何もありません。代わりに、ngDialog.open が完了するまで待つ必要があり、その時点でテンプレートが完全に読み込まれます。
ただし、ngDialog の場合、テンプレートは少なくとも部分的に読み込まれています。それ以外の場合、コントローラー コンストラクターはまったく実行されません。指定されている場所はテンプレート内だけです。
この操作の順序の違いは何によって説明されますか? これは単に ngDialog について「知っておく」必要があるものですか、それともより広い原則が働いているのでしょうか?
jquery - W2ui Grid カスタム フッター表示
W2ui グリッドでは、各列の合計/合計を表示するカスタム フッター オプションのようなものはありますか?
jquery - python: ネストされた dict を JSON のような形式に変換します
次の形式のネストされた辞書があります。
}
jquery ツリー テーブル プラグイン (w2ui) を使用して HTML ページに表示したい。プラグインは、次の形式のデータから初期化します。
など... テンプレート エンジンとして Jinja2 を使用しており、このタスクを達成するための最良の方法は何かを考えています。
私が考えることができるオプションは次のとおりです。
dict をそのプラグインの形式に一致する長い文字列に変換する Python 関数を作成し、それを Jinja に渡します。
すべてのロジックをテンプレート内に配置し、繰り返し処理して JS フォーマットを作成します。
dict を JSON として保存し、JS で処理します (私の JS はあまり好ましくありません)。
どう思いますか?
編集: @ mpf82の回答に従って、次のことを試しました:
HTML:
チェリーピー:
Cherrypy からエラー 415 が発生します: unsupported media type Expected an entity of content type application/json, text/javascript