我有一个ng-repeat,它遍历某些项,并且正在使用editmode参数在标签和输入字段之间切换,以使用户可以在线编辑值。
现在,我希望功能如下:
当用户按下“添加”按钮时,将创建一个新的空(或默认)项目,该项目的editmode设置为true(这样,输入文本框将显示为Save按钮,而不是带有编辑按钮的标签)。
我已经对此进行了很多搜索,但到目前为止找不到清晰的答案。 :(
代码如下:
<div ng-repeat="todo in todos">
<span data-ng-hide="editMode">
{{ todo.name }}
</span>
<input type="text" placeholder="{{ todo.name }}" data-ng-show="editMode" data-ng-model="name" data-ng-required />
<button type="submit" class="btn btn-default btn-xs" data-ng-hide="editMode" ng-click="editMode = true">
<span class="glyphicon glyphicon-edit"></span>
</button>
<button type="submit" class="btn btn-default btn-xs" data-ng-show="editMode" ng-click="editMode = false; editTodo(todo._id)">
<span class="glyphicon glyphicon-save"></span>
</button>
<button type="button" class="btn btn-default btn-xs" ng-click="deleteTodo(todo._id)">
<span class="glyphicon glyphicon-remove"></span>
</button>
</div>
提前致谢
最佳答案
不要将editMode用作范围变量。将其用作待办事项的对象字段(todo.editMode)。对于新的待办事项对象,将其设置为true。