Avatar billede zac Nybegynder
29. juni 2003 - 01:31 Der er 1 kommentar og
1 løsning

Opdeling af funktion m. 2 underfunktioner, skal være i 2 celler

Mit tidligere spm. om select på et niveau, som afgør select på næste niveau, gav dette tip fra "tipsen":
http://www.zend.com/zend/tut/drop-down.php
- jf. http://www.eksperten.dk/spm/363713.

Det har jeg fået til at fungere med mine egne data!

MEN resultatet fremtræder som 2 <select>-kolonner, som jeg gerne vil placere bedre vha. celler i en tabel.

Problemet er (nok) en funktion, der sendes fra den ene fil til den anden.

De to select'er kan jeg ikke få skilt ad, når funktionen printSelectors bliver sendt til den anden fil:
<form name="pickAreaCode" action="testChainedSelectors.php">
<?php
    $areacode->printSelectors();
?>
<input type="submit">
</form>

I chainedSelectors.php ser funktionen således ud:

        function printSelectors()
        {
            /*
            **create prefilled first selector ----zac indsat size='30'------
            */
            $selected=TRUE;
            print("<select name=\"" . $this->names[CS_FIRST_SELECTOR] . "\" " .
                "onChange=\"update".$this->names[CS_SECOND_SELECTOR]."();\" size='30'>\n");
            foreach($this->uniqueChoices as $key=>$value)
            {
                print("\t<option value=\"$key\"");
                if($selected)
                {
                    print(" selected=\"selected\"");
                    $selected=FALSE;
                }
                print(">$value</option>\n");
            }
            print("</select>\n");

            /*
            **create empty target selector -----zac indsat size='30'------
            */
            $dummyData = str_repeat("X", $this->longestTargetChoice);
           
            print("<select name=\"".$this->names[CS_SECOND_SELECTOR]."\" size='30'>\n");
            for($i=0; $i < $this->maxTargetChoices; $i++)
            {
                print("\t<option value=\"\">$dummyData</option>\n");
            }
            print("</select>\n");

        }
-----------------------
Jeg har søgt at indsætte <table>... forskellige steder, men uden resultat.
Jeg kan se i litteraturen at print selv er en slags funktion, så print i funktionen printSelectors() kan ikke bare laves om til echo..?
Her mister jeg overblikket...
Avatar billede Slettet bruger
29. juni 2003 - 01:52 #1
Du skal bare indsætte <table>, <tr> og <td> før og bagefter <select> + </select> ....
Håber nedenstående giver dig en idee... der er lavet nogle små rettelser - så kan du altid tilpasse det efter dine behov!?

function printSelectors()
        {
            /*
            **create prefilled first selector ----zac indsat size='30'------
            */
            $selected=TRUE;
            print("<table><tr><td><select name=\"" . $this->names[CS_FIRST_SELECTOR] . "\" " .
                "onChange=\"update".$this->names[CS_SECOND_SELECTOR]."();\" size='30'>\n");
            foreach($this->uniqueChoices as $key=>$value)
            {
                print("\t<option value=\"$key\"");
                if($selected)
                {
                    print(" selected=\"selected\"");
                    $selected=FALSE;
                }
                print(">$value</option>\n");
            }
            print("</select></td>\n");

            /*
            **create empty target selector -----zac indsat size='30'------
            */
            $dummyData = str_repeat("X", $this->longestTargetChoice);
           
            print("<td><select name=\"".$this->names[CS_SECOND_SELECTOR]."\" size='30'>\n");
            for($i=0; $i < $this->maxTargetChoices; $i++)
            {
                print("\t<option value=\"\">$dummyData</option>\n");
            }
            print("</select></td></tr></table>\n");

        }
Avatar billede zac Nybegynder
29. juni 2003 - 11:50 #2
jeg havde forsøgt noget i den retning - men nu virker det i hvert fald, tak
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester