NG-click不在ng -repeat中触发。我想使用ngclick只显示特定的元素细节。
<body ng-app="mainApp" >
<div ng-app = "mainApp" class="container" ng-controller="TableFilterController">
<table ng-app = "mainApp" class ="table table-hover">
<tr><th>Id</th><th>Name</th><th>Age</th><th>Role</th></tr>
<tr ng-repeat="p in details "><td>{{ $index + 1 }}</td><td><a ng-click="clickMe()">{{p.name}}</a></td><td>{{p.age}}</td><td>{{p.mass}}</td></tr>
</table>
</div>
</body>
JS:
var mainApp= angular.module("mainApp", []);
mainApp.controller('TableFilterController', function($scope) {
$scope.clickMe = function(){
alert("hey");
}
答案 0 :(得分:0)
请尝试删除表格标记中的ng-app
,ng-app
以便申请,只有在您可以使用它之后。
也不需要点击事件的标记,因为标记具有href
属性。
使用button
标记或任何其他标记,而不是tag
。
答案 1 :(得分:0)
可能有不同的情景: 1.删除重复的ng-app。
2.使用此一次,这将测试控制器是否正在调用onload
mainApp.controller('TableFilterController', function($scope) {
alert("its Calling");
$scope.clickMe = function(){
alert("hey");
}
首先检查这些点,否则尝试创建plunker,以便每个人都可以查看您的代码。
答案 2 :(得分:0)
请尝试以下代码。您的代码中存在一些问题。
代码中的isseus如下
您提供的脚本不完整。有一些缺失},]和)
- 醇>
删除不需要的ng-app。它不会产生任何问题,但多次包含相同的ng-app属性并不是一个好习惯。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="utf-8" />
</head>
<body ng-app="mainApp">
<div class="container" ng-controller="TableFilterController">
<table class="table table-hover">
<tr><th>Id</th><th>Name</th><th>Age</th><th>Role</th></tr>
<tr ng-repeat="p in details "><td>{{ $index + 1 }}</td><td><a ng-click="clickMe()">{{p.name}}</a></td><td>{{p.age}}</td><td>{{p.mass}}</td></tr>
</table>
</div>
<script src="../lib/angular.js"></script>
<script>
var mainApp= angular.module("mainApp", []);
mainApp.controller('TableFilterController', function ($scope) {
$scope.details = [{ "name": "A1", "age": 10, "mass": 20, },
{ "name": "A2", "age": 15, "mass": 30, },
{ "name": "A3", "age": 20, "mass": 40, },
{ "name": "A4", "age": 30, "mass": 60, }]
$scope.clickMe = function () {
alert("hey");
}
});
</script>