javascript - ng-repeat only works for variable {{ x }} outside of angle brackets ("<>")? -
i new angularjs. trying out ng-repeat, found problem in code (shown below)
<ul class="dropdown-menu" role="menu" ng-init="names=finddomains()"> <li><a style="cursor:pointer" ng-repeat="x in names" ng-click="selectdomain({{ x }})">{{ x }}</a></li> </ul> the idea have drop-down menu (e.g. name "test") on page. when clicked, displays selections, , options displayed contents in <li></li>. options returned set function finddomains() , initialized ng-init.
when particular option (content in <li></li>) selected (e.g. name "opt1"), text of drop-down menu updated name of option ("opt1" replaces "test"). implemented function selectdomain()
since same content displayed , call selectdomain(), put 2 {{x}} calling ng-repeat, hoping same option displayed calls selectdomain().
however, else seems working fine (finddomains(), ng-repeat , second {{x}} outside <a></a>). {{x}} inside <a></a> not work properly. when options clicked, dropdown menu name not updated.
but selectdomain() function works fine plain text ( such ng-click="selectdomain('opt1')).
any guidance?
per doc
ng-clickneeds expression evaluate upon click
no need of using interpolation thereng-click should not use {{}} interpolation directive, have direct access scope variables inside it.
ng-click="selectdomain(x)"
Comments
Post a Comment