Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [javaScript][Ajax] Problem ze zmiennymi
djluzak
post
Post #1





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 12.03.2004
Skąd: Kraków

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


Nie wiem czy to dobry dział, poniewaz moj problem wiąże się głownie z JS, ale także z Ajaxem.

Mam taki kod:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3.  
  4. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  5. <title>Ajax Auto Suggest</title>
  6.  
  7. <script type="text/javascript" src="jquery.js"></script>
  8. <script type="text/javascript">
  9. function lookup1(imie) {
  10. if(imie.length == 0) {
  11. $('#suggestions1').hide();
  12. } else {
  13. $.post("rpc.php", {queryString1: ""+imie+""}, function(data){
  14. if(data.length >0) {
  15. $('#suggestions1').show();
  16. $('#autoSuggestionsList1').html(data);
  17. }
  18. });
  19. }
  20. }
  21.  
  22. function fill(thisValue) {
  23. $('#imie').val(thisValue);
  24. setTimeout("$('#suggestions1').hide();", 200);
  25. }
  26. <script type="text/javascript">
  27.  
  28. function lookup2(nazwisko) {
  29. if(nazwisko.length == 0) {
  30. $('#suggestions2').hide();
  31. } else {
  32. $.post("rpc.php", {queryString2: ""+nazwisko+""}, function(data){
  33. if(data.length >0) {
  34. $('#suggestions2').show();
  35. $('#autoSuggestionsList2').html(data);
  36. }
  37. });
  38. }
  39. }
  40.  
  41. function fill(thisValue) {
  42. $('#nazwisko').val(thisValue);
  43. setTimeout("$('#suggestions2').hide();", 200);
  44. }
  45.  
  46. </head>
  47.  
  48. <input id="imie" onkeyup="lookup1(this.value);" onblur="fill();" type="text" name="imie" class="formn">
  49. <div class="suggestionsBox1" id="suggestions1" style="display: none;"><div class="suggestionList" id="autoSuggestionsList1"> </div>
  50.  
  51. <input id="nazwisko" onkeyup="lookup2(this.value);" onblur="fill();" type="text" name="nazwisko" class=formn >
  52. <div class="suggestionsBox" id="suggestions2" style="display: none;"><div class="suggestionList" id="autoSuggestionsList2"> </div></td></tr>
  53.  
  54.  
  55. </body>
  56. </html>


Wiele kodu opuscilem, ale to nie jest tu wazne. Chodzi o to, ze skrypt ten oparty na jquery wyswietla autouzupelnianie pola imie i nazwisko z bazy myqsl.
Samo wyswietlanie podpwoiedzi mi dziala, tylko cos mam nie tak z ta czescia kodu:

  1. function fill(thisValue) {
  2. $('#imie').val(thisValue);
  3. setTimeout("$('#suggestions1').hide();", 200);
  4. }
  5.  
  6. <input id="imie" onkeyup="lookup1(this.value);" onblur="fill();" type="text" name="imie" class="formn">


a dokladnie dwoma pierwszymi linijkami.

Gdy wybiore z listy imie to wpisuje mi go do pola nazwisko, a nazwisko wpisuje tez do pola nazwisko.
Co bym nie zmienil zawsze imie i nazwisko mam w tym samym polu.

Czy ktos jest mi w stanie pomoc?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
djluzak
post
Post #2





Grupa: Zarejestrowani
Postów: 61
Pomógł: 0
Dołączył: 12.03.2004
Skąd: Kraków

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


Dzieki koledzy. Wlasnie taki skrypcik znalazlem, bo nie moglem sobie poradzic ze skryptem autocomplete, a konkretniej z wdrozeniem myslq-a. Nie wiem jak polaczyc JS z SQL. Problem tkwi w tym, ze nie znam JS.

Mam dwie funkce fill i jedna nadpisuje druga, ale czy da sie to jakos ominac? Tak, zeby fill wiedzial gdzie ma wstawic jakie dane. Czy poprostu nie da sie jakiejs innej funkcji uzyc zamiast fill,. zeby wypelnic te dwa pola?

Dzieki koledzy za skrypty, jak z tym mi sie nie uda bede walczyl z innymi.

Aha, gdy podam parametr thisValue do filla to i tak nic sie nie zmienia. Zawsze mam wszystko w polu nazwisko.

Ten post edytował djluzak 16.12.2008, 14:01:29
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 8.10.2025 - 08:53