7

項目を配列にプッシュすると、ビューはリストを更新しません。

テーブル:

<tbody id="productRows">
    <tr data-ng-repeat="product in products | filter: search">
        <td>{{ product.Code}}</td>
        <td colspan="8">{{ product.Name}}</td>
    </tr>
</tbody>

形:

<form data-ng-submit="submitProduct()">
    Code:
    <br />
    <input type="text" required data-ng-model="product.Code"/>
    <br />
    <br />
    Naam:
    <br />
    <input type="text" required data-ng-model="product.Name"/>
    <br />
    <input type="submit" value="Opslaan" />
</form>

コントローラーの submitProduct:

$scope.submitProduct = function () {
    console.log('before: ' + $scope.products.length);

    $scope.products.push({Code: $scope.product.Code, Name: $scope.product.Name});
    console.log('after:' + $scope.products.length);
    console.log($scope.products);

    $scope.showOverlay = false;
};

ご覧のとおり、配列内の合計項目をログに記録すると、期待どおりに動作します。私が期待することをしない唯一のことは、新しい値を表示しないテーブルの内容です。

新しい行がテーブルに表示されるようにするにはどうすればよいですか?

4

2 に答える 2

5

コードの残りの部分はわかりませんが$scope.products、コントローラーで が定義されていることを確認してください。

このを参照してください。

あなたが提供したコードに私が加えた唯一の追加は次のとおりです。

$scope.products = [];

これで問題が解決しない場合は、さらに情報を提供してください。

于 2013-05-16T14:27:03.667 に答える