2017-09-25 10 views
0

私は、グリッドを持って更新親のKoGridメインページで

<div data-bind="setGridCell: 12, 
     component: { 
      name: 'ko.widget.koGrid', 
      params: { 
       id: 'gridId', 
       lazyLoad: true, 
       autoPopulate: false, 
       url : someurl; 
      }"> 
    </div> 

と子コンポーネント

<div data-bind="setGridCell: 12, 
     component: { 
      name: 'ko.view.report.confirmationWindow', 
      params: params() 
     }"> 
    </div> 

は、子コンポーネントは、私がデータを変更することを可能にする小さなウィンドウが開きます(両方ともWebサービスにリンクされています)。

現在、子コンポーネントの[送信]ボタンをクリックすると、データ変更がサービスに送信され、データベース内で更新され、子コンポーネントも閉じられます。

しかし、表示方法では、グリッドはまったく同じに見えます。私は一般的にknockout.jsの新機能であるため、ユーザーが変更をすぐに見ることができるようにグリッド内のデータをリフレッシュ(インプレース)する最良の方法は何か分かりません。

ありがとうございます!

(すべては.NET C#アプリケーション内にある)

答えて

0

最も簡単な方法は、部品に観察可能なモデルを渡し、あなたのコンポーネントのバインディングでのparamsを使用することです。注意すべき点は、新しい行をデータベースに挿入してIDを持たない場合だけです。保存が完了したらIDを設定して、メッセージから返品を得るまでコンポーネントを開いたままにしておく必要があります。

関連する問題