Maison > Questions et réponses > le corps du texte
比如代码如下:
<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
Ce qu'angularjs recommande, c'est d'utiliser le contrôleur pour obtenir les données via $http, puis de les restituer dans le modèle. Si vous utilisez directement PHP pour afficher le modèle, que fait d'autre Angularjs ?
angularjs a jqLite, vous pouvez utiliser angulaire.element(document.querySelector('p')).text() pour obtenir votre effet, mais ce n'est pas essentiellement différent de l'utilisation de jQuery.
phpcn_u15822017-05-15 17:06:40
Lorsque vous utilisez ng-bind ou ng-model, vous lui liez simplement une variable sous une portée, mais cela changera la valeur de la balise en non défini. angulaire.element("#element-id") semble fonctionner
淡淡烟草味2017-05-15 17:06:40
Ça devrait être comme ça
<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;
})
})
Récupérez les données transmises depuis PHP via le service $http, puis liez-les à la vue. Ce que j'écris ici est très simple. Généralement, l'interface encapsulée sera appelée dans le contrôleur, et l'implémentation spécifique est généralement dans. le service.