定位和编辑新创建的行?

时间:2015-12-22 13:58:23

标签: javascript jquery angularjs

我正在制作一张桌子。

我已使用ng-click="todo.editing = !todo.editing"

编辑我的行

的index.html

<tr ng-repeat="todo in todos>
    <td>
        <div ng-hide="todo.editing">{{ todo.id }} </div>
        <div ng-show="todo.editing"><input type="id" ng-model="todo.id" /></div>
    </td>
    <td>                
       <div ng-hide="todo.editing">{{ todo.text }}</div>
       <div ng-show="todo.editing"><input type="text" ng-model="todo.text" /></div>
   </td>
</tr>

<button class="btn btn-warning btn-sm ng-scope" ng-click="todo.editing = !todo.editing"><span class="glyphicon glyphicon-pencil"></span></button>

我已经创建了一个按钮来向表中添加新行:

的index.html

<button type="button" class="btn btn-default btn-block " ng-click="addRow($storage.todos)">New record</button>

的script.js

$scope.addRow = function (arr) {
    console.log(arr);
    arr.push({'id':$scope.id, 'text': $scope.text});
};

现在我想扩展我的addRow()函数,这样我就可以添加一个新行,同时将自己定位在该行,同时也让我进入编辑模式。

位置问题是我正在使用分页。假设我在第一页的分页中,新的排在第四页。我想自动到达那里。

有人可以给我一个提示吗?谢谢你的时间。

2 个答案:

答案 0 :(得分:1)

在推送期间只需设置editing属性值true

喜欢这个

arr.push({'id':$scope.id, 'text': $scope.text,editing:true});

答案 1 :(得分:1)

我创造了一个小提琴:

https://jsfiddle.net/0t1trq6m/

addRow()方法现在看起来像:

$scope.addRow = function () {
 console.log("test");
 var e = new Entry();
 e.id = $scope.todos.length;
 e.text = $scope.content;
 $scope.todos.push(e);
}
圣诞快乐;)