gpt4 book ai didi

angularjs - 将十进制值转换为整数的指令

转载 作者:行者123 更新时间:2023-12-02 14:36:28 25 4
gpt4 key购买 nike

我正在尝试创建一个指令将数字值转换为整数

例如,我输入类型为数字,当用户输入 1.1 时,该值应转换回 1。

app.directive('toInteger', function() {
return {
require: 'ngModel',
link: function(scope, elem, attrs, ngModel) {
ngModel.$parsers.push(function(value) {
var value = parseInt(value);
return value;
});
}
};
});

我哪里错了?

问题:如果我输入 1.1 指令会将其转换回 1。但是,它继续在 View 中显示 1.1(在输入字段内)。

我正在将指令与我的 html 一起使用,如下所示

<input type="number" name="input" class="form-control" min="0" max="1000" data-ng-model="input" to-integer>

最佳答案

我已经更改了您的指令,它可以按照您的要求正常工作。请使用这个

app.directive('toInteger', function ($parse) {
return {
require: 'ngModel',
link: function (scope, elem, attrs, ngModel) {

ngModel.$parsers.push(function (value) {
var value = parseInt(value);
$parse(attrs.ngModel).assign(scope, value);
scope.$apply();

});
}
};});

关于angularjs - 将十进制值转换为整数的指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32621732/

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