2016-08-01 9 views
0

Ich habe den folgenden HTML-Code:Erhalten Kind-Element ohne ID oder Klassenattribut mit AngularJS

<div id="someId"> 
    <div ng-transclude> 
    </div> 
</div> 

Wirklich einfach ich das div-Element bin immer das ID-Attribut mit der folgenden Funktion:

var getElementById = function (id) { 
    return angular.element("#" + id); 
}; 

In diesem Beispiel ist die ID 'someId'. Mein Ziel ist es, das Div in das zu bekommen, das ich gerade bekommen habe. Also möchte ich das div mit ng-transclude -Attribut zurückgeben. Ich glaube, dass dies geschieht, indem man ein Element nach Attributnamen oder etwas erhält.

Vielen Dank im Voraus.

PS: Ich kann keine anderen Attribute in das div setzen, das ich wollte (wie ID), weil es im wirklichen Leben viel komplizierter ist und der Code automatisch generiert wird.

Antwort

1

Ich denke, das Sie

var getElementByAttribute = function (attribute) { 
     return angular.element(document).find('[' + attribute + ']'); 
}; 

var el = getElementByAttribute('ng-transclude') 
+0

Großartig! Funktioniert gut und es ist genau das, was ich gesucht habe. –

0

helfen, weiß ich nicht, ob das die Winkel Art und Weise sein wird, aber Sie können native Eigenschaften des HTML-Elements verwenden. Etwas wie dieses:

var getElementById = function (id) { 
    return angular.element("#" + id); 
}; 

var childDivWithTransclude = getElementById('someId').children[0]; 
Verwandte Themen