Wobec jednego problemu z moim komponentem, którego nie mogę rozwiązać za pomocą React 15. Wszystko działa zgodnie z oczekiwaniami, z wyjątkiem IE 11.React nie blokuje przesyłania formularza w IE 11
Zasadniczo wygląda na to, że IE 11 ignoruje funkcję event.preventDefault() (i wszystkie skomentowane funkcje w poniższym kodzie, wypróbowane we wszystkich z nich) i przesyła dane . Strona zostanie ponownie załadowana, a parametry zapytania znajdują się w adresie URL. Chciałbym zapobiec ponownemu załadowaniu strony i wykonać tylko logikę w funkcji handleSubmit.
Postać w funkcji render:
<form onSubmit={this.handleSubmit}>
<input ref="email" type="email" name="username" required></input>
<input ref="pass" type="password" name="pass"required></input>
<input type="submit" name="login" value="Login" />
</form>
i jest to funkcja hanleSubmit:
handleSubmit: function (event) {
event.preventDefault();
//event.returnValue = false;
//event.stopPropagation();
//event.nativeEvent.preventDefault();
var email = this.refs.email.value;
var pass = this.refs.pass.value;
//return false;
},
Spróbuj zamienić 'event.preventDefault()' na 'event.preventDefault? event.preventDefault(): (event.returnValue = false); '. Wiem, że to dla> IE8, ale IE czasami jest niespodzianką. –
Próbowałem tego, ale bez powodzenia. Dzięki i tak. – Gjoshevski
@Gjoshevski znalazłeś rozwiązanie dla tego? –