AngularJS 是一個 MV* 框架,最適於開發客戶端的單頁面應用。它不是個功能庫,而是用來開發動態網頁的框架。它專注於擴展 HTML 的功能,提供動態數據綁定(data binding),而且它能跟其它框架(如 JQuery 等)合作融洽。
<body ng-app="myNoteApp"> <html> <div ng-controller="myNoteCtrl"> <p><textarea ng-model="message" cols="40" rows="10" maxlength="100"></textarea></p> <p>100/<span ng-bind="left()"></span></p> </div> </html> <script type="text/javascript"> var app=angular.module("myNoteApp",[]); app.controller("myNoteCtrl",function($scope){ $scope.message = ""; //顯示變更數量 $scope.left = function() {return 100 - $scope.message.length;}; //清除文本框 $scope.clear = function() {$scope.message = "";}; //執行保存操作 $scope.save = function() {alert("Note Saved");}; }); </script> </body>
備注:
如果在同一個表單中有多個“textarea”可以通過定義多個“ng-model”來控制
如果在不同的表單中操作不同的”textarea“ ,可以通過定義多個“ng-controller”來控制
但不管何種情況,如果在同一個文件中,同一個body中最好只使用一個”ng-app“
補充:Angular JS 中的 <textarea>用法
最近測試用把 textarea 中的值傳往後台傳,不過後台收不到,代碼是這樣寫的:
<textarea rows="15" ng-model="notice.content" style="width:65%">{{ notice.content }}</textarea>
後來修改了一下,把兩個 textarea 之間的內容去掉了,後台就能收到了,看來Angular JS中還是有一些機制需要去弄清楚。
<textarea rows="15" ng-model="notice.content" style="width:65%"></textarea>