angularjs中是否選擇所有和$filter過濾orderBy排序

來源:互聯網
上載者:User

標籤:ott   erb   idt   checked   tran   htm   全選   style   round   

HTML代碼:

<table class="table table-bordered table-list table-striped no-margin-bottom">
<thead>
<tr>
<th>{{‘column-name‘ | translate}}</th>
<th width="100">{{‘primary-key‘ | translate}}</th>
<th width="100">{{‘required‘ | translate}}</th>
<th width="100">
<md-checkbox class="no-margin-bottom" aria-label="checked"
ng-checked="table.AllColumnChecked"//設定全選按鈕初始狀態(雙向繫結)
ng-click="$ctrl.checkedAllColumn(table)"></md-checkbox>
{{‘select-all‘ | translate}}
</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="column in table.Table.ListColumn | orderBy :‘DisplayOrder‘">
<td>{{column | columnTranslateFilter}}</td>
<td><span ng-if="column.IsPrimaryKey">{{‘true‘ | translate}}</span></td>
<td><span ng-if="column.IsRequired">{{‘true‘ | translate}}</span></td>
<td>
<md-checkbox class="no-margin-bottom" aria-label="checked"
ng-checked="column.checked"
ng-disabled="column.IsPrimaryKey"
ng-click="$ctrl.checkedColumn(table,column)"></md-checkbox>
</td>
</tr>
</tbody>
</table>


js代碼:
self.checkedAllColumn = function (table) {
table.AllColumnChecked = !table.AllColumnChecked;
if (table.AllColumnChecked) {
table.Table.ListColumn.forEach(function (col) {
col.checked = true;
})
table.ListColumn = $filter(‘orderBy‘)(table.Table.ListColumn, ‘DisplayOrder‘//排序條件);
} else {
table.Table.ListColumn.forEach(function (col) {
col.checked = false;
})
table.ListColumn = [];
}
};
全選:點擊全選按鈕時(checkedAllColumn),if語句中的條件變為true,則篩選所有列選項(table.Table.ListColumn)並更改狀態為選中狀態(col.checked = true;);
取消全選時,if語句中的條件變為false,則跳轉到else篩選所有列選項並取消選中狀態;
orderBy排序:js中$filter(‘oederBy‘)擷取所有列選項並根據排序條件進行排序;html中用| orderBy :‘排序條件‘擷取排序列表;

angularjs中是否選擇所有和$filter過濾orderBy排序

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.