gpt4 book ai didi

javascript - 如何在 Angular 数学函数中保留美分

转载 作者:行者123 更新时间:2023-11-29 10:42:20 26 4
gpt4 key购买 nike

我有一个数学函数,它添加两个输入字段并将值放在第三个字段中。我还有一个过滤器,可以将美分添加到输入中。您将在 plunkr 中看到过滤器未应用于修订后的契约(Contract)。原始契约(Contract) + 总 CO = 修改后的契约(Contract)。 plunkr

$scope.$watch('currentItem.JobOriginalContract -- currentItem.JobTotalCO', function (value) {
if (!$scope.currentItem) $scope.currentItem = {};
$scope.currentItem.JobRevisedContract = value;
});
$scope.$watch('currentItem.JobRevisedContract * .85 ', function (value) {
if (!$scope.currentItem) $scope.currentItem = {};
$scope.currentItem.JobOriginalBudget = value;
});

最佳答案

$parsers仅当您从 DOM 更改 ngmodel 值时运行(例如:- 在输入框中输入)。当您以编程方式更改值时(就像您对 JobRevisedContractJobOriginalBudget 所做的那样),它是 $formatters那个运行。因此,您需要在格式化程序中进行格式化。

例子:-

    ctrl.$formatters.unshift(function (a) {
return getFormattedValue(ctrl.$modelValue);
});

ctrl.$parsers.unshift(function (viewValue) {
var plainNumber = viewValue.replace(/[^\d|\-+]/g, '');
elem.val(getFormattedValue(plainNumber));
return plainNumber;
});

function getFormattedValue(value){
return $filter(attrs.format)(value/100,2);
}

Demo

关于javascript - 如何在 Angular 数学函数中保留美分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26286416/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com