Я заполняю значения поля ввода формы программно с помощью jquery. Значения видны в форме. Когда я console.log данные формы при отправке, эти данные не содержат значений. Когда я изменяю значения вручную, данные действительно содержат значения:
Я запускаю функцию, заполняющую поле ввода:
$('#itemNum').val('myNewValue');
Это заполняет ввод следующим образом:
<input type="text" [(ngModel)]="item.number" name="number" id="itemNumber" class="form-control">
Я прекрасно вижу это недавно заполненное значение в поле ввода. Если я отредактирую этот ввод, я могу получить значение при отправке. Но если я оставлю все как есть, он вернет только свойства, определенные компонентом:
export class MyComponent implements OnInit {
item: Item = {
number:0,
...
}
onSubmit(value){ console.log(value) }
}
Как я могу заставить ngForm / ngModel / ngSubmit видеть эти заполненные значения jquery?
К вашему сведению, моя форма выглядит так:
<form novalidate #f="ngForm" (ngSubmit)="onSubmit(f)">
<input type="text" [(ngModel)]="item.number" name="number" id="itemNumber" class="form-control">
...
<input type="submit" class="btn btn-primary" value="Confirm">
</form>