获取类型为number的输入表单控件的原始字符串值



是否可以获得类型为数字的输入的原始字符串值?

示例代码

import { Component } from '@angular/core';
import { FormBuilder, FormControl } from '@angular/forms';
@Component({
selector: 'my-app',
template: `
<input
type="number"
[formControl]="control"
(ngModelChange)="getStringValue(control)"
/>
`
})
export class AppComponent {
control = this.fb.control('');
constructor(private fb: FormBuilder) {}
getStringValue(control: FormControl): void {
console.log(control.value);
}
}

Stackblitz

假设我不能改变模板(这是客户端的要求),我想要得到小数的数量或检查这个数字是否包含小数分隔符,这是可能的吗?

当我在输入字段中输入100.00100.时,属性control.value包含100。我找不到像getRawValue这样的方法来访问底层字符串。

我知道我可以建议将input元素的类型更改为text,但首先我必须找出是否有其他方法来解决这个问题。

可以获取"HTMLElement",我喜欢使用模板引用变量,

<input #inputControl
type="number"
[formControl]="control"
(ngModelChange)="getStringValue(inputControl)"
/>
getStringValue(control: any): void {
console.log(control.value);
}

最新更新