2017-01-26 4 views
1

Я использую храмовые формы в угловом2. Разработанная форма отлично работает на настольных ПК и Android, но когда я автозаполняю форму в хром iphone, форма недействительна. Я также сомневаюсь, что при использовании beginvalate в теге формы set autocomplete выключен? Ниже мой код.Данные автозаполнения в хроме IOS недействительны. Использование Angular2

<form #form="ngForm" (ngSubmit)="form.valid && onSubmit(form)" novalidate> 
    <input id="firstName" #firstName="ngModel" [(ngModel)]="firstName" type="text" name="firstName" 
     placeholder="*First Name" pattern="[a-zA-Z][a-zA-Z0-9\s]*" 
     [class.has-error]="firstName.invalid && form._submitted" maxlength="40" autocomplete="on" required> 
    <input id="lastName" #lastName="ngModel" [(ngModel)]="lastName" type="text" name="lastName" 
     placeholder="*Last Name" pattern="[a-zA-Z][a-zA-Z0-9\s]*" 
     [class.has-error]="lastName.invalid && form._submitted" maxlength="80" autocomplete="on" required><br> 
    <input id="email" type="email" #email="ngModel" name="email" [(ngModel)]="localLeader.email" 
     pattern="[a-zA-Z0-9._%+-][email protected][a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$" placeholder="*Email" 
     [class.has-error]="email.invalid && form._submitted" maxlength="80" autocomplete="on" required><br> 
    <input type="checkbox" name="isLocal" [(ngModel)]="isLocal"> 
    <div class="indicator"></div> 
    <span id="monthly"> Local</span> 
    <button class="sc-btn" type="submit">GET DATA</button> 
</form> 

Любая помощь Пожалуйста?

ответ

0

Когда мы автозаполняем форму в chrome для IOS, событие автозаполнения не запускается и не меняет событие. Трудно получить подробные сведения о компонентах данных формы. Единственным является доступ к элементу формы напрямую с помощью ViewCHild.

import {AfterViewInit, Component, Directive, ViewChild} from '@angular/core'; 

export class someComponent { 

ViewChild('firstName') firstName: nativeElement; 

ngAfterViewInit() { 
// firstname can be set here. 
} 
processForm() { 
let firstName = this.firstName.nativeElement.value; 
// same for rest of the fields. 

} 
} 
Смежные вопросы