37

次の HTML の ng-click が AngularJS で機能しない

<tr ng-repeat="ai in alert_instances" ng-click="go('/alert_instance/{{ai.alert_instancne_id}}')">
  <td>{{ai.name}}</td>
  <td>{{ai.desc}}</td>
</tr>

現在、コントローラーの「go」機能には

$scope.go = function (hash) {
  console.log("hi")
};
4

1 に答える 1

89

それは間違っている。ng-clickこの構文はテンプレートを対象としているため、Angular ディレクティブ ( ) で中括弧を使用しないでください。

適切な方法:

<tr ng-repeat="ai in alert_instances" ng-click="go(ai)">
  <td>{{ai.name}}</td>
  <td>{{ai.desc}}</td>
</tr>

$scope.go = function(ai) {
  var hash = '/alert_instance/' + ai.alert_instancne_id;
  //...
};
于 2013-03-08T06:45:56.850 に答える