26

Szukałem w całym Internecie, próbując znaleźć odpowiedź na mój problem, a najbliższą rzeczą, jaką znalazłem w odpowiedzi, jest kolejne pytanie dotyczące przepełnienia stosu, tutaj: How do i change the default text in Google Maps API Places AutocompleteZmień domyślny tekst "Wprowadź lokalizację" w Google Maps Miejsca API

Problem polega na tym, że albo OP nie miał takich samych wymagań jak ja, albo nie całkiem wyjaśnili, czy tak robią.

Szukam sposobu na przyjęcie domyślnego "Wprowadź lokalizację" w polu wprowadzania tekstu i zastąpienie go innym elementem przy zachowaniu tej samej funkcjonalności. to znaczy, że tekst znika po ustawieniu ostrości i pojawia się ponownie, gdy utraci ostrość, jeśli nie wprowadzono żadnego tekstu.

W mojej obecnej próbie próbowałem zastąpić tekst za pomocą wtyczki jQuery. Działa wizualnie na pageload, ale po kliknięciu "Enter a Location" pojawia się ponownie i znika po wprowadzeniu tekstu, lub wejście traci fokus (w przeciwieństwie do pola wprowadzania tekstu jest puste, zgodnie z przeznaczeniem).

Czy ktoś może podać mi tutaj wskaźnik?

Z góry dziękuję.

Odpowiedz

48

Wystarczy ustawić atrybut elementu inputplaceholder do którego są mocowania autouzupełniania, aby cokolwiek chcesz:

<input type="text" placeholder="Some new text"> 

Jest to szczegółowy w documentation:

domyślnie tekstu pole utworzone przez usługę autouzupełniania zawiera standardowy tekst zastępczy. Aby zmodyfikować tekst, ustaw atrybut zastępczy na elemencie wejściowym.

+0

To się udało. Dzięki. Nie mogę uwierzyć, że przeoczyłem to na dole strony. Chyba nie użyłem odpowiednich słów kluczowych do wyszukania. – Douglas

+0

Nie ma problemu, cieszę się, że mogę pomóc. Możesz go przetestować i zobaczyć, co dzieje się w przeglądarkach, które nie obsługują atrybutu "placeholder" (IE8 i poniżej). Nie wiem, co się tam stanie. –

+0

Jest jeden mały problem, w którym jeśli użytkownik wprowadzi tekst do pola, a następnie go usunie, pozostanie pusty, gdy straci fokus (w przeciwieństwie do powrotu do domyślnego ustawionego w JQuery). To mi nie przeszkadza, ale nie jest to idealna sytuacja. – Douglas