2016-09-08 21 views
1

我有這樣的元素在這裏:不能獲取的href內容NG單擊

<a href="#item1" ng-click="myfunc('arg1', 'arg2')">Item1</a> 
<a href="#item2" ng-click="myfunc('arg1', 'arg2')">Item2</a> 

「MYFUNC」 預計2個傳入參數。 現在,我還需要其他的東西,這是href-attribute的內容。

我可以做以下

1 - Add a new argument to the function 
2 - Add the event argument to read the content of href-attribute 

然而一個,在這個應用程序似乎有很多其他地方的功能「MYFUNC」之稱。 這意味着我需要修改它們以反映新的參數列表。

所以我想知道的是,如果在控制器中有一些知道調用元素的href包含的屬性。 這甚至可能嗎?

回答

1

這裏的問題是你把一個服務方法放在一個控制器中。將myfunc函數移到一個服務中,並將href參數添加到它。然後從您的控制器和其他地方調用此服務方法。

在你控制器,那麼你可以通過獲得的href:get original element from ng-click

在MYFUNC你將不得不從不同來源獲得的href其他呼叫。