-1

我需要使用 Angular.js 根据多列 vlaue 对表进行排序。我在下面解释我的代码。

<table class="table table-bordered table-striped table-hover" id="dataTable" >
                    <colgroup>
                    <col class="col-md-1 col-sm-1">
                    <col class="col-md-2 col-sm-2">
                    <col class="col-md-2 col-sm-2">
                    <col class="col-md-2 col-sm-3">
                    <col class="col-md-2 col-sm-3">
                    </colgroup>
                    <thead>
                        <tr>
                            <th>Sl. No</th>
                            <th>City name</th>
                            <th>Pincode</th>
                            <th>T-Factor</th>
                            <th>Edit</th>
                            <th>Remove</th>
                        </tr>
                    </thead>
                    <tbody id="detailsstockid">
                        <tr ng-repeat="usr in objPincodeData " ng-if="objPincodeData.length > 0">
                            <td>{{$index+1}}</td>
                            <td>{{usr.city_name}}</td>
                            <td>{{usr.pincode}}</td>
                            <td>{{usr.t_factor}}</td>
                            <td><a ui-sref='app.settings.tariff.pincode'><input type='button' class='btn btn-xs btn-green' value='Edit' ng-click="editPincodeData(usr.id);"></a></td>
                            <td ng-if="usr.pincode !=0"><a ui-sref='app.settings.tariff.pincode'><input type='button' class='btn btn-xs btn-red' value='Remove' ng-click="deletePincodeData(usr.id);" ></a></td>
                            <td ng-if="usr.pincode==0">NA</td>
                        </tr>
                        <tr ng-if="objPincodeData.length == 0">
                            <td colspan="4">
                                <center>
                                  <p><b>No Record Found</b>
                                  </p>
                               </center>
                            </td>
                        </tr>
                    </tbody>
                </table> 

在这里,我需要根据city name and pincode值对表进行排序。在这里,我需要city name按字母顺序对表格进行排序,如果pincode=0将首先出现。

4

2 回答 2

0

您可以使用角度orderBy来实现这一点。

您需要添加一个 propertyName 参数(您将在单击列时更改),该参数将保存列名称和反向布尔值,然后在 ng-repeat 指令中使用它。

类似的东西:ng-repeat="usr in objPincodeData | orderBy:propertyName:reverse"

查看文档中的示例

于 2019-03-13T07:06:07.813 回答
0

尝试这个

ng-repeat="usr in objPincodeData | orderBy:['city_name','pincode']"
于 2019-03-13T07:26:43.510 回答