2016-09-08 1 views
1

ich für meine Seite definiert, dass, wenn einige Benutzer mein Bild klickt auf, es geht eine gewisse relative-URL der Seite auf eine Funktion namens selectImage():Wie Anruffunktion und beinhalten Seite in AngularJS

<figure class="imghvr-zoom-out-right"> 
<img src="assets/img/1/1.jpg"> 
<figcaption class="w3-spec-figcaption" style="background-image: url('assets/img/1/1a.jpg')"></figcaption> 
<a href="javascript:void(0)" data-ng-click="selectImage('lists/1.html')"></a> 
</figure> 

Und ich schrieb dieses Stück Code in meinem Skript-Tag:

var app = angular.module('projects', []); 
    app.controller('projects_controller', function($scope) { 
     $scope.selectImage = function(id) { 
      $scope.includehtml = id; 
     }, 
     $scope.remove = function() { 
      document.getElementById('img_controllers').style.display = 'none'; 
     }; 
    }); 

Und schließlich definiert ich, dass, wenn der Benutzer auf das Bild klickt, Seite die Datei mit uRL enthält, die Bild der Funktion übergeben:

<div data-ng-include="{{includehtml}}"></div> 

Aber es funktioniert nicht :(Bitte helfen Sie mir Es ist sehr wichtig für mich ... Hinweis: Die Seite verwendet AngularJS 1.5.7.

+0

statt der Div. Versuchen Sie es zu verwenden als: ' ' –

Antwort

1

Rufen Sie Ihre Funktion in HTML wie: -

<div data-ng-include="selectImage(id).includehtml"></div> 

Es besteht keine Notwendigkeit {{ }} Ausdruck zu schreiben, während einschließlich Vorlage,
und Sie erwähnt, dass templateUrl Pfad in einer Funktion so Funktionsnamen verwenden und dann Vorlagennamen .

0

Super! Das Problem ist gelöst!

<div data-ng-include src="includehtml"></div> 

Dank @Saurabh Tiwari!

+0

Ich bin froh, dass ich helfen könnte ... !! –

0

Fügen Seite

<body ng-app=""> 

<div ng-include="'myFile.htm'"></div> 

</body> 

Anruffunktion Beispiel

<body> 

<div ng-app="myApp" ng-controller="customersCtrl"> 
    <div ng-include="'myTable.htm'"></div> 
</div> 

<script> 
var app = angular.module('myApp', []); 
app.controller('customersCtrl', function($scope, $http) { 
    $http.get("customers.php").then(function (response) { 
     $scope.names = response.data.records; 
    }); 
}); 
</script> 
0

auch wie verwendet werden kann,

<div ng-include=includehtml></div> 

ODER

<div data-ng-include=includehtml></div> 

Bitte bestätigen Sie.