Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Autowykrywanie zmiany wartości autowypełnianego pola formularza
tomzoll
post 13.12.2011, 23:15:00
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 19.09.2011

Ostrzeżenie: (0%)
-----


Witam serdecznie. Bardzo proszę o naprowadzenie jak mógłbym rozwiązać taki problem:

Mam taki oto formularz:

<form>
<input type="text" id=""miasto">
<input type="text" id=""dlugosc">
<input type="text" id=""szerokosc">
<input type="text" id="strefa czasowa">
</form>


Pole miasto jest wpisywane przez użytkownika, co jest połączone z jquery UI autocomplete oraz skryptem wyszukującym w bazie danych w wyniku czego użytkownik wybiera miasto z tych dostępnych w bazie danych. Do miast w bazie przypisane są również współrzędne geograficzne. Po wpisaniu miasta, automatycznie zostają uzupełnione inputy długości i szerokości geograficznej. Na podstawie wartości współrzędnych geograficznych działa funkcja js która oblicza numer strefy czasowej.

W jaki sposób napisać kod, aby strefa czasowa była automatycznie wypełniana (a raczej uruchamiany skrypt służący do jej obliczenia) po autowypełnieniu pól długości i szerokości geograficznej?

Ps. Nie ma problemu jeśli jako wyzwalacz funkcji strefy czasowej ustawię zdarzenie onChange - wtedy działa. Problem w tym, że pola te są wypełniane automatycznie i nie wiem jakie zdarzenie mam przypisać w tym przypadku do uruchomienia funkcji. Dodam, że pola długości i szerokości geograficznej są nieaktywne do wpisywania danych przez użytkownika.

Z góry dziękuję za pomoc.
Pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Damonsson
post 13.12.2011, 23:36:34
Post #2





Grupa: Zarejestrowani
Postów: 2 355
Pomógł: 533
Dołączył: 15.01.2010
Skąd: Bydgoszcz

Ostrzeżenie: (0%)
-----


Skoro użytkownika ma wpisać tylko miasto, to po co robisz dlugosc/szerokosc/strefa czasowa jako inputy? ohmy.gif
Go to the top of the page
+Quote Post
Pawel_W
post 13.12.2011, 23:56:45
Post #3





Grupa: Zarejestrowani
Postów: 1 675
Pomógł: 286
Dołączył: 15.06.2009
Skąd: Wieliczka

Ostrzeżenie: (0%)
-----


Cytat(tomzoll @ 13.12.2011, 23:15:00 ) *
Problem w tym, że pola te są wypełniane automatycznie

skoro są wypełniane automatycznie, to jest za to odpowiedzialny jakiś fragment kodu - wystarczy go znaleźć i dodać po nim wywołanie funkcji obliczającej strefę czasową smile.gif
Go to the top of the page
+Quote Post
tomzoll
post 19.12.2011, 19:46:16
Post #4





Grupa: Zarejestrowani
Postów: 20
Pomógł: 0
Dołączył: 19.09.2011

Ostrzeżenie: (0%)
-----


Cytat(Damonsson @ 13.12.2011, 23:36:34 ) *
Skoro użytkownika ma wpisać tylko miasto, to po co robisz dlugosc/szerokosc/strefa czasowa jako inputy? ohmy.gif


Dlatego, że nie każda miejscowość w bazie ma przypisaną długość i szerokość geograficzną. W sytuacji gdy nie ma tych współrzędnych w bazie, użytkownik wpisuje je z ręki (np. prowadzi obserwację nie w centrum miasta a w szczerym polu i musi wpisać współrzędne wg wskazań gps ręcznie.) Odnośnie strefy czasowej to podałem ją tylko jako przykład, gdy właściwie to zamiast stref czasowych obliczany jest na podstawie współrzędnych nr kwadratu PAO. Skrypt obliczający nr kwadratu obejmuje tylko dany region geograficzny i dla niego te wartości są obliczane. Poza danym regionem goegraficznym użytkownik musi wpisać ręcznie nr kwadratu. To w celu wyjaśnienia dlaczego inputy.

Cytat
skoro są wypełniane automatycznie, to jest za to odpowiedzialny jakiś fragment kodu - wystarczy go znaleźć i dodać po nim wywołanie funkcji obliczającej strefę czasową smile.gif


Za autowypełnianie miasta i współrzędnych geograficznych odpowiada UI Autocomplete jquery, który za pomocą skryptu PHP wyszukuje w bazie żądane informacje. Tylko jak wywołać funkcję js po wykryciu pojawienia się danych w polu współrzędnych geograficznych ?

Ponawiam pytanie smile.gif Czy jest jakaś możliwość wykrycia zmiany wartości elementu input, dokonanego np. przez skrypt obliczający JS ?:)metody onChange,onBlur itp odpadają,gdyż metody te wykrywają zmiany dokonane w wyniku interakcji z użytkownikiem...
Go to the top of the page
+Quote Post
Shili
post 19.12.2011, 20:05:42
Post #5





Grupa: Zarejestrowani
Postów: 1 085
Pomógł: 231
Dołączył: 12.05.2008

Ostrzeżenie: (0%)
-----


http://jqueryui.com/demos/autocomplete/#event-change ?
Go to the top of the page
+Quote Post
lenrok258
post 5.01.2012, 14:42:24
Post #6





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 5.01.2012

Ostrzeżenie: (0%)
-----


Cytat(tomzoll @ 13.12.2011, 23:15:00 ) *
Pole miasto jest wpisywane przez użytkownika, co jest połączone z jquery UI autocomplete oraz skryptem wyszukującym w bazie danych w wyniku czego użytkownik wybiera miasto z tych dostępnych w bazie danych. Do miast w bazie przypisane są również współrzędne geograficzne.


Skąd masz bazę danych miejscowości wraz ze współrzędnymi geograficznymi?
Czy są to wszystkie miejscowości czy tylko największe miasta?

Ja potrzebuje wszystkie możliwe miejscowości w Polsce ale nie mogę znaleźć w sieci darmowej bazy.
Z płatnych jest jedna na bazy.hoga.pl i druga na www.bazamiejscowosci.pl.

Dzieki!

Ten post edytował lenrok258 5.01.2012, 14:47:20
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:35