搜尋

首頁  >  問答  >  主體

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 去取得。

曾经蜡笔没有小新曾经蜡笔没有小新2828 天前858

全部回覆(3)我來回復

  • 为情所困

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

    angularjs推薦的是使用控制器透過$http取得數據,然後再渲染到模板上,你這直接就用PHP輸出到模板了,還要angularjs作什?
    angularjs有個jqLit​​e,可以使用 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
  • 取消回覆