1

ここに私のアプリのスクリーンショットがあります:

ここに画像の説明を入力

表示されるフィラーのリストはデータベースからのもので、すべて複数のカプセルに関連付けられています。すべてのフィラーを表示したくありません。選択したカプセルに基づいてフィラーのみを表示したい. ユーザーが選択できる4つのカプセルがあります。たとえば、ユーザーが #0 Capsule を選択した場合、Filler リストを変更して、#0 Capsule に関連するフィラーのみを表示するようにします。他のカプセルも同様です。

選択したカプセルに基づいてフィラーのみを表示するようにフィラー リストを動的に変更する最良の方法は何ですか? フィラーのリストを取得し、選択したカプセルを渡す C# メソッドを呼び出しますか?これにはポストバックが必要ですか? または、クライアント側でこれを行うより良い方法はありますか?

4

1 に答える 1

2
  1. GetFillersByCapsule(int capsuleTypeId) というメソッドでコントローラーを作成します。これにより、json オブジェクトのフィラーが返されます。
  2. クライアント側で jQuery を使用している場合は、このコントローラー メソッドへの ajax 呼び出しを行う関数を作成する必要があります。呼び出しを document.ready とドロップダウンの変更にバインドします。このようなもの:

    <script>
    var dropdown = $("#dropdownId"); //Declare this first so you don't have to search the DOM each time
    function getFillers(){
       $.ajax("yourControllerMethodUrlHere", {
        data: {id: dropdown.val()}, 
        type: "GET",
        contentType: "application/json",
        dataType: "json",
        success: function (result) {
           //Use the resulting JSON here to repopulate the list containing the fillers
        },
    }
    $(document).ready(function(){
         fill
    });
    

于 2013-02-10T21:43:05.487 に答える