2015-07-22 30 views
-1

我試圖調用一個腳本,該腳本將打開一個新頁面,其中包含有關我剛纔單擊的那個「事物」的一些信息。從ng-repeat中獲取變量爲javascript

的問題是,數據是通過它的動態,我用循環的角度,這是HTML部分:

<div id="product"> 
    <div ng-repeat="producto in productos" id="{{ producto.id }}">  
     <div class="figuranta" id="{{ producto.id }}" > 
      <figure class="floating" id="{{ producto.id }}" onclick="details({{ producto.id }});"> 
       <img ng-src="{{ producto.image }}" alt="image" class="rcorners3" style='width:100%;' border="0" alt="Null"> 
       <figcaption> {{ producto.name }} {{ producto.id }}</figcaption> 

      </figure> 
     </div> 
    </div> 
</div> 

我怎麼能傳遞angularjs ID爲「細節」的劇本?我已經知道了ng-click,但我需要將它傳遞給javascript,除非ng-click可以在頭文件中調用JS腳本。每個id =「{{producto.id}}」顯示正確,但在onclick事件。完全有可能實現嗎?或者,是否有可能與調用NG單擊在頭放在本地,一個JS函數或者它只會調用函數在主

+0

如果您可以調用onclick =「details(...)」,那麼確定您可以調用控制器的詳細信息功能。 $ scope.details = function(id){details(id)}並調用此函數使用ng-click –

回答

0

ng-src鬍子(或任何其他角度指令)TIL,如果您想將angularJS變量傳遞給當地的JS腳本的頭部,你需要做的是這樣的:

<div id="product"> 
    <div ng-repeat="producto in productos" id="{{ producto.id }}">  
     <div class="figuranta" id="{{ producto.id }}" > 
      <figure class="floating" id="{{ producto.id }}" onclick="details(id);"> 
       <img ng-src="{{ producto.image }}" alt="image" class="rcorners3" style='width:100%;' border="0" alt="Null"> 
       <figcaption> {{ producto.name }} {{ producto.id }}</figcaption> 

      </figure> 
     </div> 
    </div> 
</div> 

而且在最初的問題不一樣。

1

使用ng-click而不是onclick

ng-click="details(producto.id);" 

,並確定details功能scope在控制器中。

$scope.details = function (productId) { 
    // Code here 

此外,

你不需要在

ng-src="{{ producto.image }}" 

使用

ng-src="producto.image" 
+0

@AndreiLorincz然後,可以從控制器調用JS頭中的函數。像'$ scope.details = function(){details(arguments)}'; – Tushar