Jeg har et ducomet i jave script som laver flere celler ved at bruge pil ned. Men problemet er at jeg skal også hente noget fra db der har jeg en php script. De steder som står> input <bliver der tabeller. Hvad gør jeg når jeg vil indput php og hente fra db
function addInput() { // Navnene (name="") på de inputs der skal oprettes. let names = ['input1[]', 'input2[]', 'input3[]', ' input4[]', 'input5[]', 'input6[]'];
Hvis jeg forstår dig korrekt, skal du nok have hentet vat_id og vat inden du genererer din formular. Dvs. du skal have vat-data ind og ligge som javascript data, ligesom du har gjort med dit array af inputn[]. Derefter genererer du hele formularen på klienten, altså ikke kun input-felterne, men også select-listen. Du kan blot generere vat-data med samme kode som du pt. bruger til din select, men i stedet generere et javascript array med objekter som indeholder vat_id og vat.
Ovenstående kan bruges, hvis dine vat-data er statiske. Er det derimod meget dynamiske data, som ændrer sig hurtigt, skal du nok lave et ajax-kald, der henter vat-data, når den nye linje i tabellen oprettes. Så får du de mest opdaterede data til hver nye række du opretter...
Ja det er korrekt. >vat< eller hvad de heder er faste,den kan lige så gerne hede name men hentes et bestemt data sted. Hvad kan du fore lå det skal skrives
Derefter ville jeg så generere options ind i singleselect med din php-kode.
Til sidst skal koden der opretter nye formfelter (names.forEach) på klienten opdateres, så den kan håndtere dine forskellige formularfelttyper (der er nu to, nemlig text og singleselect, som er input hhv. select formularfelter).
Heri skal du oprette formfelterne afhængig af, hvilken type der er tale om. Disse data ligger i array'et, så du skal blot lave nogle rutiner som kan oprette de forskellige formfelter. Noget i stil med dette:
names.forEach(field => { var input = null; switch(field.type) { case "text": input = createInput(field.name, field.type, field.className); break; case "singleselect": input = createSelect(field.name, field.options, field.className); break; }
if(input) div.appendChild(input); });
Jeg vil lade genereringen af options og oprettelsen af createSelect være en øvelse til dig :-)
Det jeg har brug for her er en formular istedet for den php som jeg har.dDen kan bruge i denne forbindelse om det er Ajax eller andet har jeg ikke styr på Men php virker ikke. Den skal hente i mysql db og indsette i formularen og den skal kunne generere en ny sammen med dem andre når jeg vil lave en ny text på samme tid
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.