例如程式碼如下:
<body ng-app="app">
<p ng-controller="myCtr">
<p>这是要获取的内容</p>
</p>
</body>
其中,p標籤裡的文本,是透過php傳過來的。我試過ng-bind
, ng-model
獲取,結果是undefined
,為什麼不行?
我要怎麼透過angular
去取得這個p標籤的內容呢 ?
不想引用jq 透過js 去取得。
为情所困2017-05-15 17:06:40
angularjs推薦的是使用控制器透過$http取得數據,然後再渲染到模板上,你這直接就用PHP輸出到模板了,還要angularjs作什?
angularjs有個jqLite,可以使用 angular.element(document.querySelector('p')).text()實現你的效果,但這和使用jQuery沒有本質區別。
phpcn_u15822017-05-15 17:06:40
你用ng-bind或ng-model只是把一個scope下的變數綁定到上面,反而會改變標籤裡面的值為undefined。 angular.element("#element-id")這個好像可以
淡淡烟草味2017-05-15 17:06:40
應該是這樣的
<body ng-app="app">
<p ng-controller="myCtr">
<p ng-repeat="item in lists">{{iteam.name}}</p>
</p>
</body>
在控制器中
angular.module("app",[]);
app.controller("myCtrl",['$scope','$http'],function($scope,$http){
$http.get("url").then(function(data){
$scope.lists=data;
})
})
透過$http服務拿到PHP傳過來的數據,再綁定到視圖上,我這裡寫的很簡單,一般會在controller裡面調用封裝好接口,具體實現一般都在service裡面。