Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 区分当前文本框值和旧文本框值并以角度JS显示_Javascript_Angularjs - Fatal编程技术网

Javascript 区分当前文本框值和旧文本框值并以角度JS显示

Javascript 区分当前文本框值和旧文本框值并以角度JS显示,javascript,angularjs,Javascript,Angularjs,我的代码是这样的 <body> <div> <table ng-app='myApp' ng-controller="MainCtrl"> <thead></thead> <tbody ng-repeat="prdElement in palletElement track by $index"> <tr>

我的代码是这样的

<body>
<div>
    <table ng-app='myApp' ng-controller="MainCtrl">
        <thead></thead>
        <tbody ng-repeat="prdElement in palletElement track by $index">
            <tr>
                <td>{{prdElement.name}}</td>
            </tr>
            <tr ng-repeat="data in prdElement.Data">
                <td>{{data.itemId}}</td>
                <td>{{data.shipmentId}}</td>
                <td>{{data.itemCode}}</td>
                <td>{{data.description}}</td>
                <td>{{data.handlingUnit}}</td>
                <td>{{data.weight}}</td>
                <td>{{data.class}}</td>
                <td>{{data.lenght}}</td>
                <td>{{data.width}}</td>
                <td>{{data.height}}</td>
                <td>{{data.flag}}</td>
                <td>
                    <input type="text" ng-model="data.quantity" placeholder=" Code" required />
                </td>
            </tr>
            <tr>
                <td>
                    <button ng-click="newPalletItem( prdElement,$event)">Submit</button>
                </td>
            </tr>
            <!--<tr id="displayitems" >
                <td>
                    {{palletElement}}
                </td>
             
            </tr>-->

        </tbody>
    </table>
</div>
当有人更改最后一列文本框中的值并按下提交按钮时,我想计算[文本框中的预排序值-(减去)该文本框中的当前值]并在下一行显示它。到目前为止,我已经成功地将整个数据完全复制到下一行。但不知道如何实现休息。谁能想出一个解决办法

来自Fiddle的更多详细信息:正如您所看到的,当前值是第一个文本框是
31
,如果有人在我将行复制到底部时将其更改为
10
,我希望新的文本框值显示为
21
(即31-10)。

请参见此处:

newPalletImte:

$scope.newPalletItem = function (palletElement, $event) {
            var npalletElement = {};
            angular.copy(palletElement, npalletElement);
            counter++;

            angular.forEach(npalletElement.Data, function (row) {
                if (row.quantity != row.newquantity) {
                    row.quantity = row.quantity - row.newquantity;
                }

            });

            $scope.palletElement.push(npalletElement);
        };

    });
HTML:


{{prdElement.name}
{{data.itemId}
{{data.shipmentId}
{{data.itemCode}
{{data.description}
{{data.handlingUnit}
{{data.weight}}
{{data.class}}
{{data.lenght}
{{data.width}
{{data.height}}
{{data.flag}
提交
$scope.newPalletItem = function (palletElement, $event) {
            var npalletElement = {};
            angular.copy(palletElement, npalletElement);
            counter++;

            angular.forEach(npalletElement.Data, function (row) {
                if (row.quantity != row.newquantity) {
                    row.quantity = row.quantity - row.newquantity;
                }

            });

            $scope.palletElement.push(npalletElement);
        };

    });
  <table ng-app='myApp' ng-controller="MainCtrl">
            <thead></thead>
            <tbody ng-repeat="prdElement in palletElement track by $index">
                <tr>
                    <td>{{prdElement.name}}</td>
                </tr>
                <tr ng-repeat="data in prdElement.Data" ng-init="data.newquantity  = data.quantity">
                    <td>{{data.itemId}}</td>
                    <td>{{data.shipmentId}}</td>
                    <td>{{data.itemCode}}</td>
                    <td>{{data.description}}</td>
                    <td>{{data.handlingUnit}}</td>
                    <td>{{data.weight}}</td>
                    <td>{{data.class}}</td>
                    <td>{{data.lenght}}</td>
                    <td>{{data.width}}</td>
                    <td>{{data.height}}</td>
                    <td>{{data.flag}}</td>
                    <td>
                        <input type="text" ng-model="data.newquantity" placeholder=" Code" required />
                    </td>
                </tr>
                <tr>
                    <td>
                        <button ng-click="newPalletItem( prdElement,$event)">Submit</button>
                    </td>
                </tr>
                <!--<tr id="displayitems">
                    <td>
                        {{palletElement}}
                    </td>

                </tr>-->
            </tbody>
        </table>