0

いくつかのチェックボックスでチェックされているものに基づいて、Angular JS を使用してテーブルを動的に生成したいと考えています。問題は、常に表示したいいくつかのフィールドがあり、それらを関係/列と呼び、残りのフィールドはボックスがチェックされている場合にのみ表示されることです。リレーションは検索ボックスを介して検索され (リレーションには複数の列を含めることができます)、ユーザーに関連するそのリレーションのプロパティのみを表示したいと考えています。

そう

Update Time [X]
Update Status [ ]
Time Zone [ ]

次の行に沿っていくつかのhtmlを表示します

<table>
    <tr>
        <th> Relation </th>
        <th> Column </th>
        <th> Update Time </th>
    </tr>
    <tr ng-repeat= "result in results">
        <td> {{result.relation}} </td>
        <td> {{result.column}} </td>
        <td> {{result.update_time}}</td>
    </tr>

ボックスがチェックされていない場合は、リレーション フィールドと列フィールドのみが入力されます。Angular JS のドキュメントは私をあちこちに連れて行ってくれます。

編集:コントローラーはまだ機能していません。検索結果をフィルタリングする必要がありますが、基本的には

$scope.search = function(){

    //validate form input

    //create url with the input recieved

    $http.get(url).success(function(data){
        $scope.results = angular.fromJson(data);
    });
}

モジョリシャスなバックエンドを使用して、必要なデータを取得します。繰り返しますが、問題は、データを取得できないことでも、関係に基づいて結果をフィルター処理できないことでもありません。リレーションに基づいて検索し、チェックした内容に基づいて、必要なリレーションの属性のみを表示できるようにしたいと考えています。その部分、私にはわかりません。

もう一度編集します:私がいるファイアウォールにより、コメント/賛成票を書くことができません。私が今夜家に帰るとき、あなたはあなたの助けに対して報われるでしょう。ありがとうありがとう!

4

2 に答える 2

2

これを行う最善の方法は、モデル内の変数に関連付けられた ng-show 式を使用することだと思います。

例えば。

<input type="checkbox" ng-model="updateTime">

チェックボックスを作成し、結果を $scope.updateTime に関連付けます。その後、この変数を ng-show ディレクティブを介して後で使用できます...

<th ng-show="updateTime"> Update Time </th>

...

<td ng-show="updateTime"> {{result.update_time}}</td>

つまり、これらの要素は、updateTime が true に設定されている (つまり、チェックボックスがオンになっている) 場合にのみ表示されます。

ここで例を見ることができます。私は 1 つのフィールドしか実装していませんが、かなり簡単に拡張できるはずです!

http://plnkr.co/edit/W6Ht6dnGw4fBplI83fB1?p=preview

于 2013-08-08T15:28:42.710 に答える