AngularJS 表格
ng-repeat 指令可以完美的顯示錶格。
在表格中顯示數據
使用 angular 顯示錶格是非常簡單的:
AngularJS 實例
<!DOCTYPEhtml><html><head><metacharset="utf-8"><scriptsrc="https://cdn.bootcss.com/angular.js/1.6.3/angular.min.js"></script></head><body><divng-app="myApp"ng-controller="customersCtrl"><table><trng-repeat="x in names"><td>{{ x.Name }}</td><td>{{ x.Country }}</td></tr></table></div><script>var app = angular.module("myApp", []);
app.controller("customersCtrl", function($scope, $http) {
$http.get("/try/angularjs/data/Customers_JSON.php")
.then(function (result) {
$scope.names = result.data.records;
});
});</script>
廢棄聲明 (v1.5)
v1.5 中
$http
的success
和error
方法已廢棄。使用then
方法替代。如果你使用的是 v1.5 以下版本,可以使用以下代碼:
var app = angular.module("myApp", []);
Customers_JSON.php 文件代碼:
<?phpecho<<<EOT{
"records":[
{"Name":"Alfreds Futterkiste","City":"Berlin","Country":"Germany"},
{"Name":"Ana Trujillo Emparedados y helados","City":"México D.F.","Country":"Mexico"},
{"Name":"Antonio Moreno Taquería","City":"México D.F.","Country":"Mexico"},
{"Name":"Around the Horn","City":"London","Country":"UK"},
{"Name":"B"s Beverages","City":"London","Country":"UK"},
{"Name":"Berglunds snabbk?p","City":"Lule?","Country":"Sweden"},
{"Name":"Blauer See Delikatessen","City":"Mannheim","Country":"Germany"},
{"Name":"Blondel père et fils","City":"Strasbourg","Country":"France"},
{"Name":"Bólido Comidas preparadas","City":"Madrid","Country":"Spain"},
{"Name":"Bon app"","City":"Marseille","Country":"France"},
{"Name":"Bottom-Dollar Marketse","City":"Tsawassen","Country":"Canada"},
{"Name":"Cactus Comidas para llevar","City":"Buenos Aires","Country":"Argentina"},
{"Name":"Centro comercial Moctezuma","City":"México D.F.","Country":"Mexico"},
{"Name":"Chop-suey Chinese","City":"Bern","Country":"Switzerland"},
{"Name":"Comércio Mineiro","City":"S?o Paulo","Country":"Brazil"}
]
}EOT;?>
使用 CSS 樣式
為了讓頁面更加美觀,我們可以在頁面中使用CSS:
CSS 樣式
<style>
table, th , td {
border: 1px solid grey;
border-collapse: collapse;
padding: 5px;
}
table tr:nth-child(odd) {
background-color: #f1f1f1;
}
table tr:nth-child(even) {
background-color: #ffffff;
}
</style>
使用 orderBy 過濾器
排序顯示,可以使用 orderBy 過濾器:
AngularJS 實例
<table>
<tr ng-repeat="x in names | orderBy : "Country"">
<td>{{ x.Name }}</td>
<td>{{ x.Country }}</td>
</tr>
</table>
嘗試一下 ?
使用 uppercase 過濾器
使用 uppercase 過濾器轉換為大寫:
AngularJS 實例
<table>
<tr ng-repeat="x in names">
<td>{{ x.Name }}</td>
<td>{{ x.Country | uppercase }}</td>
</tr>
</table>
顯示序號 ($index)
表格顯示序號可以在 <td> 中添加 $index:
AngularJS 實例
<table>
<tr ng-repeat="x in names">
<td>{{ $index + 1 }}</td>
<td>{{ x.Name }}</td>
<td>{{ x.Country }}</td>
</tr>
</table>
嘗試一下 ?
使用 $even 和 $odd
AngularJS 實例
<table>
<tr ng-repeat="x in names">
<td ng-if="$odd" stylex="background-color:#f1f1f1">{{ x.Name }}</td>
<td ng-if="$even">{{ x.Name }}</td>
<td ng-if="$odd" stylex="background-color:#f1f1f1">{{ x.Country }}</td>
<td ng-if="$even">{{ x.Country }}</td>
</tr>
</table>
※AngularJS Scope(作用域)
※AngularJS 控制器
※Highcharts 柱形圖
※Highcharts 餅圖
TAG:程序員小新人學習 |
※AngularJS篇 1.AngularJS不入門
※Promise介面是AngularJS組織API的基礎
※AngularJS中的MVC模式
※angularjs 點擊div外面,隱藏該div