搜索

首页  >  问答  >  正文

angular.js - angular 如何获取标签里的文本?

比如代码如下:

<body ng-app="app">
    <p ng-controller="myCtr">
        <p>这是要获取的内容</p>
    </p>
</body>

其中,p标签里的文本,是通过php传过来的。我试过ng-bindng-model获取,结果是undefined,为什么不行?
我要怎么通过angular去获取这个p标签的内容呢 ?
不想引用jq 通过js 去获取。

曾经蜡笔没有小新曾经蜡笔没有小新2794 天前840

全部回复(3)我来回复

  • 为情所困

    为情所困2017-05-15 17:06:40

    angularjs推荐的是使用控制器通过$http获取数据,然后再渲染到模板上,你这直接就用PHP输出到模板了,还要angularjs作什?
    angularjs有个jqLite,可以使用 angular.element(document.querySelector('p')).text()实现你的效果,但这和使用jQuery没有本质区别。

    回复
    0
  • phpcn_u1582

    phpcn_u15822017-05-15 17:06:40

    你用ng-bind或者ng-model只是把一个scope下的变量绑定到上面,反而会改变标签里面的值为undefined。angular.element("#element-id")这个好像可以

    回复
    0
  • 淡淡烟草味

    淡淡烟草味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里面。

    回复
    0
  • 取消回复