ng-Click不在ng-repeat中使用{{$ index}}

时间:2014-03-29 12:00:02

标签: javascript angularjs

这似乎是一个简单的问题,但它花了我几个小时。

我有以下代码。

            <div class="row grid" id="draftRow{{$index}}" ng-repeat="draft in drafts">
            <div class="col-md-7 cell" ng-bind="draft.getTitle()"></div>
            <div class="col-md-2 cell center" ng-bind="draft.getUserName()"></div>
            <div class="col-md-2 cell center" ng-bind="draft.getDate()"></div>
            <div class="col-md-1 cell center" >
                <span class="gridbutton" ng-click="editPost(draft.getPostID())">edit</span>
                |
                <span class="gridbutton" ng-click="deletePost(draft.getPostID(),'{{$index}}')">delete</span>
            </div>
            </div>

虽然我可以看到在浏览器检查元素上写的deletePost(draft.getPostID(),'0'),但是没有调用deletePost函数。有人指出这里有什么问题?如果我删除deletePost函数的第二个参数,一切运行正常。

我还尝试了$parent.$index,它调用了函数,但没有在inspect元素上输出rowIndex

1 个答案:

答案 0 :(得分:2)

正如我在评论中所说:不要使用{{...}}进行解释,只需使用变量本身:deletePost(draft.getPostID(), $index)