2017-10-10 163 views
1

我是Angular2的新手,我不得不在Angular2中獲得下一個元素值/文本,但我無法做到這一點。在Jquery中非常容易,但我沒有找到任何方法在Angular2中實現相同。請幫忙。如何獲得Angular2中的下一個元素/兄弟姐妹

這裏是我的代碼:

<div id="div1">Here is Div-1 content</div> 
<div id="div2">Here is Div-2 content</div> 

在jQuery中這是很容易做到的,如:

$('#div1').next().text(); 

如何同樣可以在角2

+0

可能的重複[DOM操作屬於Angular 2?](https://stackoverflow.com/questions/37376442/where-does-dom-manipulation-belong-in-angular-2) – asmmahmud

+0

否, 不是這樣。我的問題是不同的。 – Ankit

+0

類似於https://stackoverflow.com/questions/32693061/angular-2-typescript-get-hold-of-an-element-in-the-template?noredirect=1&lq=1 – asmmahmud

回答

0

可以做,你可以使用元素引用和使用與jQuery中相同的方式。

注入元素引用您的組件

constructor(private elementRef: ElementRef) { 

    } 

然後使用查詢選擇

this.elementRef.nativeElement.querySelector('.div1').style.display = 'none'; 
+0

是的,這可以給我什麼我想要,但我在任何其他方式流浪。有沒有其他方法? – Ankit

+0

@ViewChild也在那裏,但不知道,沒有嘗試過。你也可以看看。您也可以將一些組件變量綁定到標籤。我認爲還有其他方法。 –

1

我想你在找什麼是沒有棱角具體的事情,但至少在JavaScript,你可以做這個:document.getElementById('div1').nextSibling您可以在其中找到所述元素的屬性。你可以增加索引來尋找下一個兄弟,或者檢查孩子,等等等等。

You can read about implementation here on MDN.

希望這有助於。 :)