javascript - AngularJS call function from click -


i can't life of me figure out why can't call function in controller.

on clicking accordion-group attribute error:
uncaught referenceerror: getconversationsforuser not defined

here html:

<ui-view id="smtconvocard" layout="column" layout-fill layout-padding>     <div layout="row" flex layout-align="center center">         <md-card flex-gt-sm="90" onresize="resize()" flex-gt-md="80">             <md-card-content>                 <md-list>                     <h2>conversations</h2>                     <accordion close-others="oneatatime">                         <accordion-group heading="{{contact.firstname}} {{contact.lastname}}" ng-repeat="contact in contacts" onclick="getconversationsforuser(contact.useruid)">                             <div>test</div>                         </accordion-group>                     </accordion>                 </md-list>             </md-card-content>         </md-card>     </div> </ui-view> 

here controller being used (partial code):

controller('convctrl', ['$scope', 'messagefactory', function ($scope, messagefactory) {         var currentuser = helpers.storage.get('uid');         $scope.contacts = [];          $scope.getcontacts = function () {             /*does stuff*/         };          //this function trying call         $scope.getconversationsforuser = function (useruid) {             /*does stuff*/         };          //setup         $scope.getcontacts();     }]); 

i've tried changing onclick different element, calling getcontacts function instead , uncaught referenceerror

i know function within scope because i'm data binding contacts variable page.

try :

<accordion-group heading="{{contact.firstname}} {{contact.lastname}}" ng-repeat="contact in contacts" ng-click="getconversationsforuser(contact.useruid)">     <div>test</div> </accordion-group> 

and don't forget insert ng-controller="convctrl" in element wrapping accordion.

update

i add little explanation : $scope in controller mysupercontroller have linked in dom via ng-controller="mysupercontroller" attribute added tag (= dom element), $scope variable represent variable within controller.

as create function attached scope ($scope.myfunction = function () { /* ... */ }), can call it, i.e., when event fired. case via ng-click directive attaches event handler element on it's set attribute.


Comments

Popular posts from this blog

facebook - android ACTION_SEND to share with specific application only -

python - Creating a new virtualenv gives a permissions error -

javascript - cocos2d-js draw circle not instantly -