2015-07-22 34 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