如何在我在angularjs中提交之前获取文本框中的旧值?

时间:2017-12-07 08:20:56

标签: asp.net angularjs

我想在文本框中获取旧值并将其保存在临时变量中,如果单击取消/重置按钮我可以使用它

client.html的一部分

<input type="text" id="txtage" placeholder="Age" data-ng-model="vm.client.age" />
<button type="submit" data-ng-click="cancel()"><span class="glyphicon glyphicon-remove"></span> Cancel</button>

client.js文件

var vm = this;
vm.clients = [];
vm.client = {
        id: '',
        age: ''
    };
vm.cancel = cancel;  
 function cancel() {
        clientService.cancel(vm.client);
        getClients();
    }
function getClients() {
        vm.clients = clientService.get();
    }

clientService.js

 function cancel(client) {

        newValue[] = clients;
        cancel_lagi = function (newvalue, oldvalue) {
        clients.new = 'New Value :' + clients.newValue;
        clients.old = 'Old Value :' + $scopes.oldValue;
        clients.oldvalue = oldvalue;
        client.newValue = oldvalue;
        }
    }

如果我单击表中的数据并尝试在文本字段中更改其值。更改后我可能会改变主意,所以当我点击取消按钮时它将返回其旧值。 当我单击取消按钮时,我尝试编辑的字段将返回其旧值。

1 个答案:

答案 0 :(得分:0)

您可以引入另一个变量来跟踪单击编辑时的旧值。然后在取消时您可以重置该值。在伪代码中:

editClicked(client) {
   vm.client = angular.copy(client);
   vm.originalClient = client;
}

cancelClicked() {
    vm.client = vm.originalClient;
    vm.originalClient = null;
}