hinzufügen Ich verwende angularjs. Ich versuche, zu suchen und zu dem Benutzer auf Click zu navigieren. Bei der Suche erstelle ich HTML vom angularjs Controller und zeige in der Ansicht an.Konnte keine Attribute aus dem Controller in angular js ionic
Aber das Merkwürdige ist, in HTML kann ich Attributsklasse, aber nicht ID oder ng-klicken. Ich möchte einfach nur ng-click in den HTML-Code einfügen, damit ich auch auf den Klick klicken kann. Beim Klicken möchte ich zu dem bestimmten Benutzerprofil navigieren.
Hier ist mein Code, bitte überprüfen Sie es und schlagen Sie mir vor, wo ich falsch liege.
.controller('searchDesignCtrl', function($scope,$http,api_root) {
$scope.html = '<div class="button-bar"><a class="search-item"><i class="ion-person"></i>Username</a><a class="search-item"><i class="ion-person"></i>Username</a><a class="search-item"><i class="ion-person"></i>Username</a><a class="search-item"><i class="ion-person"></i>Username</a><a class="search-item"><i class="ion-person"></i>Username</a><a class="search-item"><i class="ion-person"></i>Username</a></div>'
$scope.searchuser = function(element){
$scope.value_input = $(element.currentTarget).val();
var link = api_root+'users/search_users';
$http({
url: link,
method: "POST",
data: 'uname=' + $scope.value_input,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
}).success(function (data, status, headers, config) {
$scope.fetched_users = data.data;
$scope.html ='<div class="button-bar">';
$.each($scope.fetched_users, function(key,value){
//here ng-click is not added in the view
$scope.html+= '<a class="search-item '+value.User.id+'" ng-click="navigate_to_user()"><i class="ion-person"></i>'+value.User.username+'</a>';
});
$scope.html +='</div>';
// console.log($scope.html);
}).error(function (data, status, headers, config) {});
}
$scope.navigate_to_user=function(){
console.log($scope);
}
})
AngularJS geht durch Kompilierung, um Fügen Sie die integrierten Anweisungen wie ng-click hinzu. Um diese hinzuzufügen, nachdem das Dom gerendert wurde, müssen Sie den von Angular bereitgestellten Dienst $ compile verwenden. [Dieser Artikel] (http://odetocode.com/blogs/scott/archive/2014/05/07/using-compile-in-angular.aspx) erklärt es ziemlich gut. Und es gibt auch die [Angular Docs] (https://docs.angularjs.org/api/ng/service/$compile) –