javascript - 更新值不起作用

标签 javascript angularjs lokijs

我正在尝试对某个值执行更新,但是分配给它的新值绑定(bind)到范围值但不会更改,当我编辑时,它会使用原始值保存
分割

$scope.showDepositUpdate = function(birthday) {
        $scope.depositValue="one";
        $scope.birthday = birthday;
        $scope.action = 'deposit';
        $scope.isAdd = false;
        $scope.showUpdateModal = true;
    };
$scope.updateDeposit = function() {
            $scope.birthday.Name = $scope.depositValue;
            StoreFactory.updateBirthday($scope.birthday);
            $scope.depositValue='';
            newValue =""
            $scope.showUpdateModal = false;

    };

但是scope.depositValue不会根据 View 上的值更新它,它总是concat到“”,这是我的 View

<form class="form-inline" ng-show="showUpdateModal">
            <h2 class="title">{{ action }} Birthday</h2>
            <div class="form-group">
                <input type="text" class="form-control"  ng-model="birthday.Name" placeholder="name" placeholder="Jane Doe">
            </div>
            <div class="form-group">
                <input type="text" class="form-control"  ng-model="depositvalue" placeholder="name" placeholder="deposit">
            </div>
            <button ng-click="updateDeposit()" class="btn btn-default btn-lg btn-rounded">Save</button>
  </form>

<tr ng-repeat="birthday in birthdays">
            <td>{{ birthday.Name }}</td>
            <td>{{ birthday.Date }}</td>
            <td> <button class="btn btn-info btn-sm btn-rounded" ng-click="showDepositUpdate(birthday)">deposit</button>

最佳答案

在您的函数$scope.updateDeposit中,您将变量depositValue的值设置为“”。 $scope.depositValue='';。也许这是你的问题?

我做了一个片段来向您展示这一点。

看看是不是你想要的。

var $scope = {};

var myApp = angular.module('myApp', []);

var StoreFactory = {
  updateBirthday: function(){return true} // JUST A MOCKUP
};

myApp.controller('myCtrl', ['$scope',
  function($scope) {

    $scope.showDepositUpdate = function(birthday) {
      $scope.depositValue = "one";
      $scope.birthday = birthday;
      $scope.action = 'deposit';
      $scope.isAdd = false;
      $scope.showUpdateModal = true;
    };
    $scope.updateDeposit = function() {
      $scope.birthday.Name = $scope.depositValue;
      StoreFactory.updateBirthday($scope.birthday);
      $scope.depositValue = '';
      newValue = ""
      $scope.showUpdateModal = false;

    };

  }
]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

<div ng-app="myApp" ng-controller="myCtrl">

  <form class="form-inline" ng-show="showUpdateModal">
    <h2 class="title">{{ action }} Birthday</h2>
    <div class="form-group">
      <input type="text" class="form-control" ng-model="birthday.Name" placeholder="Jane Doe">
    </div>
    <div class="form-group">
      <input type="text" class="form-control" ng-model="depositvalue" placeholder="deposit">
    </div>
    <button ng-click="updateDeposit()" class="btn btn-default btn-lg btn-rounded">Save</button>
  </form>

  <tr ng-repeat="birthday in birthdays">
    <td>{{ birthday.Name }}</td>
    <td>{{ depositvalue }}</td>
    <td>
      <button class="btn btn-info btn-sm btn-rounded" ng-click="showDepositUpdate(birthday)">deposit</button>
    </td>
  </tr>

关于javascript - 更新值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33152015/

相关文章:

javascript - 如何使用 angular.js 向数组添加新的键和值?

javascript - 如何获取 lokijs 集合中的嵌套对象

javascript - 是否可以将 java 方法的引用传递给 GWT 中的 javascript

javascript - 如何获取参数值

javascript - Angular 平移不区分大小写

javascript - LokiJS 支持 ISO-8601 日期格式吗?

javascript - 在 server.js 中需要 loki inMemory 数据库会导致 nodemon 不断重启

javascript - 从链接提交表单并获取 $_Post 值

javascript - OfflineAudioContext.startRendering() 基于 promise 的函数在 safari 中不起作用

javascript - 使用 ng-change 进行 HTML 选择不起作用