1

カスケードドロップダウンボックスがいくつかあり、ユーザーはデータを表示する前にデータをフィルタリングできます。私はこれをJQueryを使用して行い、JsonResultsでリストを返しました。しかし、最後のドロップダウンボックスの変更時に、適用したフィルターに一致するデータを取得して、これをテーブルに表示したいと思います。

テーブルをレンダリングするには、MVCに組み込まれているモデルとhtmlhelpersを使用したいと思います。ページをポストバックさせずに(そしてカスケードドロップダウンからデータを失うことなく)このデータをモデルに取り込む方法(または可能かどうか)がわかりません。私が欲しいのは、なんとかしてJqueryからモデルを更新することです。これにより、データをJsonresultとして動的にテーブルを作成して送り返すことができます。

何か案は?

乾杯

4

1 に答える 1

3

JSONを介して結果を返すことに加えて、コントローラーから部分的なビューを返すこともできます。

  $('#lastDDL').change(function () {
     var ddlX= $('#ddlX').val();
     var ddlY= $('#ddlY').val();
     ...etc
     $('#results').load('/Controller/FinalResults/' + '?ddlX=' + ddlX + ... etc ...;
  });

コントローラに返すJSONオブジェクトを作成する方法はいくつかありますが、開始するにはこれで十分です。

コントローラ内:

  public ActionResult FinalResults(int ddlX, int ddlY, etc)
  {
     var myModel = new myModel(ddlX, ddlY, etc);
     return PartialView("finalResults",myModel);
  }
于 2012-05-10T12:49:29.813 に答える