Avatar billede sonic666 Novice
04. november 2003 - 12:35 Der er 5 kommentarer og
1 løsning

Automatisk udfyld tekstfelter i formular

Jeg en formular til varebestilling på en hjemmeside. Kan jeg, udfra en brugers valg i en pull/down liste, få udfyldt nogle tekst felter automatisk?

Eks.:
En bruger vælger varen "rensevæske" i en liste. Derefter bliver de to tekstfelter "varenr" og "pris" automatisk udfyldt med den dertil høende data.

Kan det lade sig gøre? Og hvilket sprog skal jeg bruge. Asp, xml, javascipt eller... ???

Mvh Thomas
Avatar billede mm12010 Nybegynder
04. november 2003 - 12:58 #1
JS er meget fint til at udfylde felter, men du kan sikkert med fordel udskrive din select med ASP eller PHP
det er vigtigt at du adskiller pris og varenr med / ex:
value="pris/varenr"

---------------------------------------------------------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Automatisk udfyld tekstfelter i formular</title>
<script language="JavaScript" type="text/javascript">
function writeNumbers(sel,frm){
    sel=sel.split("/");
    frm.pris.value=sel[0];   
    frm.nr.value=sel[1];   
    return;
    }
</script>
</head>
<body>
<form name="form1" method="post" action="">
  Liste<select name="liste" onChange="writeNumbers(this.options[this.selectedIndex].value,this.form);">
    <option value="/" selected></option>
    <option value="50,25/b-264">rensev&aelig;ske</option>
    <option value="218/w33-9">anden v&aelig;ske</option>
  </select>
  <br>
  Pris:<input type="text" name="pris">
  <br>
  Varenr.<input type="text" name="nr">
</form>
</body>
</html>
Avatar billede deurell Nybegynder
04. november 2003 - 12:59 #2
Du bør nok bruge eventhandleren onchange eller onblur på dit felt. til at kalde noget script der henter informationerne i en database hvis det altså drejer sig om mere end to valgmuligheder.
Man kan vel foreslå at du bruger fx mySQL og PHP
Avatar billede sonic666 Novice
04. november 2003 - 19:22 #3
indtil viddere viker det fint. Men er der nogen måde jeg kan få en value med på listen også. Som det er nu indeholder den kun de to parametre til pris og nummer. Jeg ville også gerne have at jeg kunne se om brugeren har valgt rensevæske eller anden væske (uden at skulle til at slå varenummeret op). :-)

Kan det lade sig gøre??
Avatar billede mm12010 Nybegynder
04. november 2003 - 20:19 #4
jepper:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Automatisk udfyld tekstfelter i formular</title>
<script language="JavaScript" type="text/javascript">
function writeNumbers(sel,frm){
    frm.hvad.value=sel.text;   
    sel=sel.value.split("/");
    frm.pris.value=sel[0];   
    frm.nr.value=sel[1];   
    return;
    }
</script>
</head>
<body>
<form name="form1" method="post" action="">
  Liste<select name="liste" onChange="writeNumbers(this.options[this.selectedIndex],this.form);">
    <option value="/" selected></option>
    <option value="50,25/b-264">rensev&aelig;ske</option>
    <option value="218/w33-9">anden v&aelig;ske</option>
  </select>
  <br>
  Vare<input type="text" name="hvad">
  <br>
  Pris:<input type="text" name="pris">
  <br>
  Varenr.<input type="text" name="nr">
</form>
</body>
</html>
Avatar billede sonic666 Novice
10. november 2003 - 14:57 #5
Hej igen det er rigtigt godt. Og det virker. Nu har jeg lavet en side hvor man skal vælge i to lister. Begge valg udfylder hver deres nr og pris.
Det der nu er mit problem er, at jag nederst på siden skal have en sum af de to priser. Altså en total.

har du et bud på hvordan jeg løser det?
Avatar billede mm12010 Nybegynder
10. november 2003 - 16:19 #6
jeg tror det er udover dette spg's rammer...!-)
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