Jeg har en form som jeg gerne vil have fungere således:
Du vælger et post nr. fra en drop down boks (hentet fra en SQL query med DISTINCT. Efter du har valgt opdaterer siden med en GET request (via javascript). Så er det valgte postnr valgt i dropdown boksen, og der kommer en ny hvor man kan vælge adresser fra det postnr.
Til sidst kan man submitte det til en ny php side.
Noget af mine kode:
<SCRIPT language=JavaScript> function reload(form) { var val=form.postnr.options[form.postnr.options.selectedIndex].value; val=val.substring(0, 4); self.location='search.php?postnr=' + val; } </script>
1) Start med at skifte til jQuery eller lignende. 2) Flyt onchange væk fra selve <select>. 3) Undlad at genindlæse hele siden ved pstnr valg, indlæs kun den nye menu v.h.a. ajax.
Javascript kommer til at se nogenlunde sådan ud: $(function() { // kaldes af jquery når hele siden er indlæst; al init her $('#postnr').change( function() { // kaldes når postnr skifter var postnr = $(this).val(); $('#adresse').load('getaddrforpostno.php', { postnr: postnr }, function() { // kaldes når adr menuen er indlæst $('#adress').show(); }); }); });
Generering af postnr menuen er næsten den samme, bare fjern onchange='...' og sørg for at sætte id til 'postnr', altså: <select id="postnr" name="postnr" ... >
Du skal osse generere en skjult, tom <select> til adresserne: echo '<select id="adresse" name="adresse" style="display: none;"></select>';
Endelig skal du lave et PHP script som getaddrforpostno.php som returnerer alle <option> for et givet postnummer.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.