2

ng-repeatwithを使用してチェックボックスを作成する JSON オブジェクトがありますorderBy: 'name'

<div ng-controller="Ctrl">
    <ul>
        <li ng-repeat="fruit in fruits | orderBy:'name'">
            <label>
                <input type="checkbox" name="{{fruit.name}}" id="{{fruit.name}}">
                {{fruit.name}}
            </label>
        </li>
    <ul>
</div>

ここで、アイテムを最初に「チェック済み」で並べ替え、次にアルファベット順に並べ替えたいと思います。

ここにフィドルがあります:http://jsfiddle.net/DqfTw/67/

4

3 に答える 3

2

デフォルトのfalse(チェックされていない)、または必要に応じて、ステータスのデータに追加の列が必要です。それを ng-model に使用すると、データは以下のようになります。

 $scope.fruits =
            [{'name':'apple',status:false},
        {'name':'Mary',status:false},
        {'name':'Mike',status:false},
        {'name':'Adam',status:false},
        {'name':'Julie',status:false}]

    }

あなたのhtmlは次のようになります

   <ul>
<li ng-repeat="fruit in fruits | orderBy:['!status','name']">
    <label><input type="checkbox" name="{{fruit.name}}" ng-model="fruit.status" >{{fruit.name|uppercase}}</label></li>
<ul>

以下のフィドルリンクを確認してください。これは必要に応じて完璧に機能します http://jsfiddle.net/DqfTw/90/

@Mickael 更新されたものでも完全には機能しませんでした。

于 2013-08-27T21:09:45.563 に答える