Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript] generowanie odległości od 2-ch miejscowości
Forum PHP.pl > Forum > Po stronie przeglądarki
blackneron
Mam pytanie co do zmiany przekazywania nazw miejscowości do funkcji js, otóż teraz to się odbywa poprzez wysłanie wartości z inputów.
(myślałem, że możnaby zrobić, żeby inputy były 'hidden' i wtedy formularz automatycznie by wysyłał te dane i otrzymywał wynik, bez przycisku submit ...)
Chodzi ogólnie o to, aby wynik był bez przeładowania strony...
Z js dużo nie mam wspólnego, dlatego proszę o pomoc.
Pozdrawiam.


  1.  
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
  5. <meta name="robots" content="noindex,follow" />
  6. <title>Kalkulator</title>
  7. <script src="http://maps.google.com/maps?file=api&v=2&key=moj_kod_google_api" type="text/javascript"></script>
  8.  
  9. <script type="text/javascript">
  10.  
  11. var geocoder, location1, location2, gDir;
  12.  
  13. function initialize() {
  14. geocoder = new GClientGeocoder();
  15. gDir = new GDirections();
  16. GEvent.addListener(gDir, "load", function() {
  17. var drivingDistanceMiles = gDir.getDistance().meters / 1609.344;
  18. var drivingDistanceKilometers = gDir.getDistance().meters / 1000;
  19. document.getElementById('results').innerHTML = drivingDistanceKilometers;
  20. });
  21. }
  22.  
  23. function showLocation() {
  24. geocoder.getLocations(document.forms[0].address1.value, function (response) {
  25. if (!response || response.Status.code != 200)
  26. {
  27. alert("Sorry, we were unable to geocode the first address");
  28. }
  29. else
  30. {
  31. location1 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
  32. geocoder.getLocations(document.forms[0].address2.value, function (response) {
  33. if (!response || response.Status.code != 200)
  34. {
  35. alert("Sorry, we were unable to geocode the second address");
  36. }
  37. else
  38. {
  39. location2 = {lat: response.Placemark[0].Point.coordinates[1], lon: response.Placemark[0].Point.coordinates[0], address: response.Placemark[0].address};
  40. gDir.load('from: ' + location1.address + ' to: ' + location2.address);
  41. }
  42. });
  43. }
  44. });
  45. }
  46.  
  47. </script>
  48. </head>
  49.  
  50. <body onload="initialize()">
  51.  
  52.  
  53.  
  54. <form action="#" onsubmit="showLocation(); return true;">
  55. <p>
  56. <input type="text" name="address1" value="Lublin" />
  57. <input type="text" name="address2" value="Warszawa" />
  58. <input type="submit" value="Search" />
  59. </p>
  60. </form>
  61. <!-- Tu się wyświetlają dane -->
  62. <p id="results"></p>
  63.  
  64.  
  65. </body>
  66. </html>
korek_a
Cytat
Chodzi ogólnie o to, aby wynik był bez przeładowania strony...


A słyszałeś o AJAX questionmark.gif
Poczytaj pierwsze tutki o AJAX tam jest opisane jak się robi takie formularze.


http://forum.php.pl/index.php?showtopic=11...rt=#entry600677
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.