Mam prosty formularz logowania, który na IE10 zawsze ma pola formularza nieprawidłowe, gdy strona ładuje się bez udziału użytkownika.Pole formularza AngularJS jest zabrudzone i nieważne, gdy strona ładuje się tylko na IE10.
pól formularza są bardzo proste:
<input type="text" required class="input-block-level" placeholder="username" ng-model="username" name="username" tabindex="1">
<p class="text-error" ng-show="loginForm.username.$dirty && loginForm.username.$invalid">
<span ng-show="loginForm.username.$error.required">required</span>
</p>
http://plnkr.co/edit/DNUanGGaZDgFWYrm3gLK?p=preview
W plunker powyżej można odtworzyć problem, skupiając się na polu, podczas gdy w mojej aplikacji pole błędzie jest wyświetlany po załadowaniu strony . W innych przeglądarkach działa dobrze.
Przetestuję to, dzięki! Wygląda na to, że problem z niepoprawnym polem na stronie został spowodowany przez jedną z moich dyrektyw. Ale błąd ostrości nadal występuje. – lucassp
@lucassp: Zachowanie jest odtwarzalne bez żadnych niestandardowych dyrektyw i znika, gdy tylko usuniesz symbol zastępczy. W rzeczywistości jest to [znany problem na GitHubie] (https://github.com/angular/angular.js/issues/2614). Problem nie polega na tym, że jest oznaczony jako nieważny - jest to z założenia - problem polega na tym, że jest oznaczony jako brudny, co ma się zdarzyć tylko wtedy, gdy wpiszesz pole. – Aaronaught
@Aaronaught Usunąłem symbole zastępcze na moich danych wejściowych, ale nadal są one oznaczone jako nieprawidłowe podczas ładowania strony, a to z kolei powoduje, że moje klasy błędów CSS są stosowane przy ładowaniu strony. Jakieś poprawki? :( – Ciwan