Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobieranie danych z bazy i ich wyświetlanie
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
Gadziu
Mam formularz. Obok jest div gdzie chciałbym, żeby pojawiały się pewne informacje pobrane z bazy. Poprzez JS pobieram wpisane słowo w okienko, ale w tym momencie się komplikuję, bo nie wiem jak zrobić, żeby bez naciskania submita połączyć się z bazą, pobrać pewne informacje na podstawie wpisanego słowa w formularz i ich wyświetlenie. Jakieś pomysły?
sowiq
Użyj AJAX'a. JQuery ma metodę "load", którą bez problemu to zrobisz. http://api.jquery.com/load/

Przykład:
[JAVASCRIPT] pobierz, plaintext
  1. $('#moj_element').load('/adres/?slowo=' + slowo);
[JAVASCRIPT] pobierz, plaintext
Gadziu
Hmm, cienki jestem w JS, ale z tego co przeczytałem z opisu funkcji load to wymyśliłem tak, ale nie działa... Wg mnie to powinno wziąć zmienną f, przekazać ją do test1.php, ten powinien wyświetlić f, a funkcja load załadować to do diva "opis". Próbowałem z przekazaniem POST lub GET, ale nie działa tak czy siak.

test.php
  1. <head>
  2. <script type="text/javascript" src="js/jquery2.0.3.js"></script>
  3. <script language="JavaScript">
  4. <!-- <![CDATA[
  5. function napis(f) {
  6. $( "#opis" ).load( "test1.php", { "f" } );
  7. }
  8. // ]]> -->
  9. </script>
  10. </head>
  11. <body>
  12.  
  13. <form>
  14. <div style="display: inline;">
  15. <input type="text" onchange="napis(this)" />
  16. </div>
  17. <div id='opis' style="display: inline;"></div>
  18. </form>
  19.  
  20.  
  21. </body>


test1.php
  1. <?php
  2. $slowo = $_GET['f'];
  3. echo $slowo;
  4. ?>
_Borys_
load() przekazuje postem a więc musisz sprawdzać tablicę $_POST a przekazywać tak
$( "#opis" ).load( "test1.php", {"f":f});
Poza tym do funkcji musisz przekazać wartość inputa a nie sam input
<input type="text" onchange="napis(this.value)"/>
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.