Posiadałem pole do wprowadzania danych, umożliwiające użytkownikom wprowadzanie niestandardowego linku do strony z poziomu formularza tworzenia (trochę podobnego do Wordpress). (np. about/awards
, który zostanie użyty w przypadku http://site.com/pages/about/awards
) W pewnym momencie przestało działać w przeglądarce Chrome, ponieważ obecnie bardziej rygorystycznie sprawdza poprawność pola input type="url"
. Który byłby dobry, ale:typ danych wejściowych = "url" dla względnych adresów URL
- Nie zezwala na względne adresy URL. about/awards to względny adres URL, ale wydaje się, że Chrome odrzuca wszystko oprócz bezwzględnych adresów URL. http://domain/page/stuff
- Niepowodzenie nie jest szczególnie oczywiste. Po prostu koncentruje się na polu formularza (co nie jest szczególnie zauważalne) i odmawia przesłania formularza. Otrzymałem raport, że formularz "nie działa", ponieważ nie zauważyli, co się dzieje, i zajęło mi kilka minut, aby zdać sobie sprawę z tego, co się dzieje.
Naprawiłem go tylko przełączenie z powrotem do input type = „text”, ale ten pokonuje niektóre z przydatnych rzeczy, które type="url"
dodanej (takie jak specjalnej klawiatury na iPhone).
Czy jest to część specyfikacji HTML5, czy problem z implementacją Chrome?
i pytanie jest ....? – GSto
@GSto: Mój zły, zapomniałem najważniejszego zdania. – Macha
Możesz przesłać względny adres URL z "http: //" po przesłaniu, aby był prawidłowy. Zobacz przykłady tutaj ... https: //stackoverflow.com/questions/17946960/with-html5-url-input-validation-assume-url-starts-with-http/41193579#41193579 –