2014-11-08 54 views
0

我的NG-包括实际上自举NG-单击不自举中工作的NG-包括

<a data-href="#/speakers/{{speaker.id}}" ng-click="myFunc('{{speaker.id}}')"> 
    <span class="speaker-name">{{speaker.name}}</span> 
    <span class="speaker-title-company">{{speaker.title}}, {{speaker.company}}</span> 
</a> 

ng-include

<ng-include id="speakers" data-ng-controller="SpeakerController" src="'js/view/partials/speakers.html'" ng-show="toggle"></ng-include> 

boostrapping

var self = this; 

angular.module(this.constructor.NAME, []) 
.controller("SpeakerController", function($scope, $location){self.speakerController($scope, $location)}) 
angular.bootstrap(document.getElementById("speakers"), [this.constructor.NAME]); 

然后speakerController

speakerController: function($scope, $location) { 
    var self = this; 

    $scope.myFunc = function(param){console.log('in');self.myFunc(param)} 
}, 

myFunc: function(param) { 
    console.log(param); 
}, 

回答

0

更改为ng-click="myFunc(speaker.id)"。你不需要在那里使用表达式。

+0

真棒,我怎么能通过'data-href =“#/扬声器/ {{speaker.id}}”'基本上URL到myFunc(url)函数,链接就像#/ speakers/1, #/扬声器/ 2,#/扬声器/ 3等或在角度世界这是最好的方式工作,我被迫使用'window.location = url'在代码 – user2727195 2014-11-08 20:37:18

+0

由于某种原因,我建议你通过按原样变量,并在函数中附加静态部分。但如果你坚持,'ng-click ='MyFunc('#/扬声器/'+扬声器.id)“' – 2014-11-08 20:56:57

+0

我抬头,$ event.target,但问题是,href是父元素, $ event.target是我的例子中的''标记,但我已经在我的锚中单击了hg-setup,是否有像$这样的东西?所以我通过锚点自身的$ event和getAttribute('data-href')从锚点($ this),因为可能会有更多的attrs定位在锚点 – user2727195 2014-11-08 21:00:52