login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Script aanpassen voor 2 form elementen (Opgelost)

Offline JLT - 13/01/2010 14:41
Avatar van JLTPHP interesse Als PHPer heb ik geen kaas gegeten van Javascript. Ik gebruik dit stukje javascript voor het suggesten van een aantal gegevens uit de database.

Zodra de bezoeker de postcode invult verschijnt er in een divje de bijbehorende plaats- en straatnaam. Leuk, maar in het tekstvak ernaast wordt het huisnummer ingevuld. Deze wil ik ook in dat zelfde DIVje laten verschijnen.

Als ik de functies in z'n geheel copier en de naam verander en deze aanroep vanuit HTML zet of in het bestaande DIVje alleen het huisnummer neer. Of ik laat hem het resultaat in een ander DIVje uittuffen. Maar dan heb ik twee DIVjes en dat wil ik niet.

Kortom hoe verwerk in onderstaand script twee form elementen (postcode en huisnummer).

Hopelijk is het een beetje duidelijk  

En natuurlijk weer bedankt voor alle hulp!!!

  1. var xmlhttp
  2.  
  3. function showHint(str)
  4. {
  5. if (str.length==0)
  6. {
  7. document.getElementById("txtHint").innerHTML="";
  8. return;
  9. }
  10. xmlhttp=GetXmlHttpObject();
  11. if (xmlhttp==null)
  12. {
  13. alert ("Your browser does not support XMLHTTP!");
  14. return;
  15. }
  16. var url="../include/adres_ophalen.php";
  17. url=url+"?q="+str;
  18. url=url+"&sid="+Math.random();
  19. xmlhttp.onreadystatechange=stateChanged;
  20. xmlhttp.open("GET",url,true);
  21. xmlhttp.send(null);
  22. }
  23.  
  24. function stateChanged()
  25. {
  26. if (xmlhttp.readyState==4)
  27. {
  28. document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
  29. }
  30. }
  31.  
  32. function GetXmlHttpObject()
  33. {
  34. if (window.XMLHttpRequest)
  35. {
  36. // code for IE7+, Firefox, Chrome, Opera, Safari
  37. return new XMLHttpRequest();
  38. }
  39. if (window.ActiveXObject)
  40. {
  41. // code for IE6, IE5
  42. return new ActiveXObject("Microsoft.XMLHTTP");
  43. }
  44. return null;
  45. }

4 antwoorden

Gesponsorde links
Offline marten - 13/01/2010 14:44
Avatar van marten Beheerder
Citaat:
Als PHPer heb ik geen kaas gegeten van Javascript.


Wil je aub je zin veranderen? Je zegt dus dat alle PHPers geen kaas hebben gegeten van Javascript  
Offline JLT - 13/01/2010 15:00 (laatste wijziging 13/01/2010 15:00)
Avatar van JLT PHP interesse Sorry! Ik zeg dat IK geen kaas heb gegeten van Javascript. Ik spreek natuurlijk voor mezelf
Offline vinTage - 13/01/2010 15:34 (laatste wijziging 13/01/2010 15:39)
Avatar van vinTage Nieuw lid Als php'er moet je gewoon het huisnummer echoen bij het adres..

in adres_ophalen.php dus


edit:

snap nu pas wat je bedoelde 

huisnr is optioneel hier.

  1. function showHint(str, huisnr)
  2. {
  3. if (str.length==0)
  4. {
  5. document.getElementById("txtHint").innerHTML="";
  6. return;
  7. }
  8. xmlhttp=GetXmlHttpObject();
  9. if (xmlhttp==null)
  10. {
  11. alert ("Your browser does not support XMLHTTP!");
  12. return;
  13. }
  14. var url="../include/adres_ophalen.php";
  15. url=url+"?q="+str;
  16. url=url+"&huisnr="+huisnr;
  17. url=url+"&sid="+Math.random();
  18. xmlhttp.onreadystatechange=stateChanged;
  19. xmlhttp.open("GET",url,true);
  20. xmlhttp.send(null);
  21. }
Offline JLT - 13/01/2010 17:10 (laatste wijziging 15/01/2010 15:14)
Avatar van JLT PHP interesse ---- update ----

probleem opgelost! Ik had er nog form tag voor gezet en nadat gedaan te hebben werkte het volgende vlekkeloos.

  1. <input type="text" name="nummer" size="12" onkeyup="showHint(postcode.value,this.value)"/>


Iedereen bedankt voor de moeite!!

Als ik de waarde via onkeyup naar het js bestand stuur. Hoe doe ik dat als ik twee inputvelden heb?

  1. <input type="text" name="postcode" size="12" onkeyup="showHint(this.value)" />
  2. <input type="text" name="nummer" size="12" onkeyup="showHint(this.value)" />


Ik wil dus eigenlijk als het laatste inputveld (nummer) wordt ingevuld. Twee waardes naar het JS bestand worden gestuurd. Dus iets als:

  1. <input type="text" name="postcode" size="12" />
  2. <input type="text" name="nummer" size="12" onkeyup="showHint(postcode.value,this.value)" />


Maar dit werkt, helaas niet...

En natuurlijk weer een bedankje voor de helper  

Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.173s