2
<ul class="todo-list">
    <li ng-repeat="todo in todos">{{todo.todoContent}}<span class="pull-right glyphicon glyphicon-check" ng-class="{checked:todo.done}" ng-click="todoCheck(todo)" title="check this todo">check</span></li>
  </ul>

现在,当我单击 span 元素以检查目标 todo 时,我想将标题属性更改为“取消选中此待办事项”并将文本“检查”更改为“已选中”。
任何人都可以在这里提供帮助。非常感谢。

示例小提琴

4

2 回答 2

4

如果您想对单击的元素进行更细粒度的控制,可以通过使用 ng-click 处理程序中的 $event 来实现。

喜欢

ng-click="todoCheck($event, todo)"

我已经使用 jquery 来设置标题和内容并更新了你的小提琴。

这是更新的小提琴

$scope.todoCheck = function ($event, todo) {

   var spanElement = $event.srcElement;

   $(spanElement).attr('title', "uncheck this todo");

   $(spanElement).html("checked");

   todo.done = !todo.done;

};

于 2013-09-13T08:42:46.163 回答
2
<li ng-repeat="todo in todos">
    {{todo.todoContent}}
    <span class="pull-right glyphicon glyphicon-check" 
    ng-class="{checked:todo.done}" ng-click="todoCheck(todo)" 
    title="{{!todo.done && 'check this todo' || 'uncheck this todo'}}">
        {{!todo.done && 'check' || 'checked'}}
    </span>
</li>
于 2013-09-13T08:26:08.960 回答