2014-09-12 49 views
0

我正在使用AngularJS,我有一個疑問。AngularJS:刪除DOM中的HTML元素,但不刪除它的內容

我有這樣的事情:

<a href="#"> 
<p>Hello World!</p> 
</a> 

我想刪除錨點,而不是它的內容。如果我使用ng-show/ng-hide,根據條件,它將刪除所有內容,錨點甚至段落。

我該如何刪除只保持內容顯示(但未鏈接)的錨點?

謝謝!

+0

我會建議你使用一個指令對這種事情。 – 2014-09-12 11:40:08

+0

爲什麼你不能從模板中刪除它?或使用'ng-if'或'ng-switch'你還沒有提供任何條件 – charlietfl 2014-09-12 11:47:17

+0

當你想要它發生?在頁面加載時,或者您希望能夠在某種情況下返回元素? – dfsq 2014-09-12 11:53:01

回答

2

使用NG-href和表達:

<a ng-href="{{show()? '#' : ''}}"> 
<p>Hello World!</p> 
</a> 
+0

但內容(

)將保持鏈接,不是嗎?我想要的是完全移除錨。 – 2014-09-12 11:43:02

+0

他的答案將工作...我要回答他的,這是一個plnkr與這個答案有關... http://plnkr.co/edit/bGn2csAF3JtZpEql9O9s?p=preview – 2014-09-12 11:48:02

+0

哦,是的!它按我的意願工作。謝謝! – 2014-09-12 11:53:02

1

可能並非最佳的方法。

您可以使用

<a ng-if="condition == false"> 
<p>Hello World!</p> 
</a>  
<p ng-if="condition == true">Hello World!</p> 

在地方的ngIf可以使用ngShowngHide

+0

是的,它發生在我身上,但我也認爲這可能不是最好的方法......無論如何,如果沒有最好的答案,那將是我將要使用的。 – 2014-09-12 11:49:53