2016-04-14 8 views
0

Ich versuche subpages meiner Haupt-Seite zu schließen ..AngularJS ng-umfassen Durchgangswert von der Steuerung

Ich verwende ng-include .. als ich versuchte, diese ng-include="'samplePage.php'" zu setzen mit es funktioniert ... aber was ich will, ist der Wert von ng-include in der Steuerung zuweisen ...

hier ist mein HMTL-Code

<div id="navbar-override" class = "navbar navbar-inverse navbar-static-top" ng-controller="indexCtrl"> 
     <div class = "container"> 
      <div class = "navbar-header"> 
       <a href = "index.html" class = "navbar-brand"> 
        Sample App 
       </a> 
       <button id="navbar-btn-override" class = "navbar-toggle" data-toggle = "collapse" data-target = ".navHeaderCollapse"> 
        <span class = "icon-bar"></span> 
        <span class = "icon-bar"></span> 
        <span class = "icon-bar"></span> 
       </button> 
      </div> 
      <div class = "collapse navbar-collapse navHeaderCollapse"> 
       <ul class = "nav navbar-nav navbar-right"> 
       <li ng-repeat="link in Links" ng-class="{'active': selectedItem === link}"> 
        <a href = "javascript:void(0)" ng-click="Link(this)">{{ link }}</a> 
       </li> 
       </ul> 
      </div> 
     </div> 
    </div> 

    <div class="container" ng-include="pages"> 
      <!--subpages will append here--> 
    </div> 

mein controller.js

indexApp.controller('indexCtrl', ['$window','$scope', '$http', function($window, $scope, $http) { 

$scope.pages = "./pages/customer.php"; 

}]); 

wenn Sie mich fragen, warum ich das tun .. weil ich ng-include dynamisch ......

Ich bin noch neu zu verwenden bin Hobel mit mir so tragen AngularJS ... dank im Voraus ..

Antwort

2

Dies funktioniert,

Ihre HTML:

<div ng-controller="Ctrl"> 
    <select ng-model="template" ng-options="t.name for t in templates"> 
    <option value="">(blank)</option> 
    </select> 
    url of the template: <tt>{{template.url}}</tt> 
    <hr/> 
    <div ng-include src="template.url" onload='myFunction()'></div> 
    </div> 

<!-- template1.php--> 
<script type="text/ng-template" id="./pages/template1.php"> 
    Content of template1.php 
</script> 

<!-- template2.php--> 
<script type="text/ng-template" id="./pages/template2.php"> 
    <p ng-class="color">Content of template2.php</p> 
</script> 

Controller:

function Ctrl($scope) { 
    $scope.templates = [{ 
     name: 'template1.php', 
     url: './pages/template1.php'}, 
    { 
     name: 'template2.php', 
     url: './pages/template2.php'}]; 
    $scope.template = $scope.templates[0]; 

    $scope.myFunction = function() { 
     $scope.color = 'red'; 
    } 
} 

http://jsfiddle.net/MfHa6/1517/

+0

Ich habe auch versucht, this..but dies nicht funktioniert .. –

+0

@SamTengWong i mit Beispiel meine Antwort aktualisiert hatte, können Sie es überprüfen dies hilfreich ist.? – sreeramu

+0

Entschuldigung mein Fehler ... es funktioniert jetzt .... der eigentliche Name meiner Datei ist 'customers.php' ... es dauerte eine Stunde zu bemerken ... meine schlechte .. aber danke für die Hilfe ... –

Verwandte Themen