問題タブ [knockout-kendo]
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.
templates - 剣道グリッド、ノックアウト VM、行テンプレート
KendoUI グリッドが ko vm にバインドされています
特定の要件 (一部の列のアイコン、リンクなど) により、ko テンプレートとして定義する rowTemplate を定義する必要があります。
しかし、通常の行と交互の行を異なる背景色で表示したいです。
このため、以下のように 2 つの同一のテンプレートを定義しました
alt テンプレートの class class="k-alt" がテーブル行に適用されていることを除いて、基本的に 2 つのテンプレートは同じです。
しかし、このアプローチは、行テンプレートのマークアップ全体を複製するため、非常に悪いものです。
必要なことを達成するためのより良い方法は何ですか?
ありがとうございました
templates - knockout-kendo および Knockout External-Template-Engine で剣道グリッドを使用する
ノックアウト剣道パッケージのおかげで、ノックアウト付きの剣道グリッドを使用しています。
グリッドとグリッドの構成を次のように定義しています。
テンプレート:
ビューモデルのコード:
データソースにデータを入力すると、すべてがうまく機能しています。
ただし、アプリ全体のさまざまなテンプレートでうまく機能する Knockout.js-External-Template-Engine を使用していますが、剣道グリッド行に使用されるテンプレートでは機能しません。
私は2つの方法でセットアップしようとしました:
gridOptions.rowTemplate で外部テンプレートに名前を付けます (ただし、データ オブジェクトへの参照を外部テンプレート エンジンに渡す方法がわからないため、これをあきらめます)
gridOptions.rowTemplate が html ファイル内の「疑似テンプレート」を指すようにし、その内部で外部テンプレートへの参照を定義し、以下のように $data をデータ コンテキストとして渡します。
外部テンプレート gridRow.tmpl.html は次のとおりです。
ただし、機能しません。ページの読み込み中にネットワーク リクエストを確認すると、剣道行テンプレートを読み込むリクエストがありません。
それを機能させる方法はありますか?
EDIT 行テンプレートを外部ファイルに移動すると、ページ内でrowTemplate inlineを使用しても問題なく動作する場合でも、次のjavascriptエラーが発生することに気付きました。
ReferenceError: gridOptions が定義されていません
knockout-validation - ノックアウト検証が機能しないノックアウト剣道ウィジェット
ノックアウト剣道でノックアウト検証を実装する必要があります。
私はこのhtmlを持っています:
Javascript:
検証は、テキスト領域にバインドされた説明フィールドに対して正常に機能します。ただし、comboBox または datePicker では機能しません。
ドキュメントとこのjsFiddle を確認しましたが、動作させることができませんでした。
どんな助けでも大歓迎です。
mvvm - 剣道ノックアウトドロップダウンリストの変更イベントが発生しない
これが剣道ウィンドウ内にある場合、変更イベントが発生しない理由を知っている人はいますか??
ノックアウト剣道.jsを使用しています。
c# - KendoUI DropDownList - 「New...」を選択するとテキストボックスを表示
KendoUI DropDownList にアイテムのリストがあります。Razor 構文を使用して生成されます
私がしたいこと:
ユーザーが探しているものがリストから見つからない場合は、「新規...」(静的な値) を選択します。
非表示のテキスト フィールドが表示され、新しい値を追加できるようになります。
新しい値は、コントローラー メソッド (WIP) にポストバックする必要があります。
私が考え出したこと:
データを取得する
「新規」オプションを静的に追加する
これはこれまでのところうまくいきます:
コントローラー アクション メソッドからデータを取得し、期待どおりにリストを表示します。
「Change」と「DataBound」の 2 つのイベントにバインドできます。
問題:
jQuery の「ready」メソッドを使用して、「New..」という静的な値を追加しています。この値を複製しています。無限ループだと思います。
だから、この時点で立ち往生しています
部分ビュー:
Javascript: