2016-08-01 69 views
0

我有以下的HTML代碼:獲取子元素沒有ID或類AngularJS屬性

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

真的簡單我使用下面的函數獲取具有ID屬性的div元素:

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

在這個例子中,ID是'someId'。我的目標是讓我剛剛得到的那個div。所以我想用ng-transclude屬性返回div。我相信這會通過獲取屬性名稱或其他元素來實現。

在此先感謝。

PS:我不能在我想要的div(如id)中放置任何其他屬性,因爲在現實生活中它更加複雜,代碼是自動生成的。

回答

1

我認爲這將有助於你

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

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

太棒了!工作得很好,這正是我所期待的。 –

0

我不知道這是否會成爲角的方式,但你可以使用HTML元素的天然屬性。類似這樣的:

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

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