我在一个页面上有一个填写表单,在另一个页面上有一个列表,其中有一个编辑按钮。如果我单击编辑按钮,我将被定向到页面,其中包含显示我要编辑的数据的表单。我真的很难接受这个带有选定数据的另一个表单页面。有谁知道如何做到这一点? 的 HTML:
<button class="button" type="button" ng-click="edit()">
<i class="fa fa-edit"></i>
</button>
controller.js
$scope.edit = function (value) {
$location.path('/add-expense');
expService.editEntry(value);
};
services.js:
//attempt to edit the form
editEntry: function (value) {
var oldValue = localStorage.getItem(value.key);
value.key = oldValue.key;
localStorage.setItem(value.key, value);
},
答案 0 :(得分:0)
如果您真的想将数据存储在浏览器的本地存储中,您可以简单地:
window.localStorage.setItem('key', value);
然后回想起来
var data = window.localStorage.getItem('key')
删除它
window.localStorage.removeItem('key');
虽然我同意本地存储不是保存表单数据的地方。最好通过路由参数传递给新页面,这需要你使用angularjs路由模块,教程:https://docs.angularjs.org/tutorial/step_09
或者,将修改按钮更改为:
<a href="~/expense/{{expense.ID}}">Edit</a>
然后在服务器端,使用ID参数将编辑项目的数据加载到结果视图中。