Avatar billede joch Nybegynder
10. august 2001 - 09:34 Der er 8 kommentarer og
1 løsning

Tage en værdi fra form med til næste side i html

Hvordan får jeg min side to til at skrive hvad jeg valgte i formen på side et?

Kan det kun gøret via en cookie, eller hvad og hvordan...
Avatar billede jakobandersen Nybegynder
10. august 2001 - 09:41 #1
Du kan ikke gøre det med ren HTML, du kan gøre det vha. noget serverside eller evt. ved at gemme dataene i en cookie vha. Javascript.
Avatar billede joch Nybegynder
10. august 2001 - 09:46 #2
Hvordan overføre jeg så dataerne via cookie?
Avatar billede jakobandersen Nybegynder
10. august 2001 - 10:28 #3
Jeg vrøvler du kan bare sende dem med GET altså¨i querystringen og hente dem vha. Javascript sådan her:

function createRequestObject() {
 
  FORM_DATA = new Object();
    // Arrayet hvor vores form data skal gemmes i oprettes.
 
  separator = \',\';
    // Hvis der sendes data fra checkboce der kan have mere end en værdi er ; seperator
 
  query = \'\' + this.location;
    // Vi henter URL´en så vi kan filtrere vores data
   
  query = query.substring((query.indexOf(\'?\')) + 1);
    // Alt efter ? skæres fra og beholdes med funktionen substring
 
  if (query.length < 1) { return false; }  // Hvis der nu ike er nogle værdier opstet til siden.
 
  keypairs = new Object();
  numKP = 1;
    // Midlertidig opbevaring af data før det smides i vores Array
   
  while (query.indexOf(\'&\') > -1) {
    keypairs[numKP] = query.substring(0,query.indexOf(\'&\'));
    query = query.substring((query.indexOf(\'&\')) + 1);
    numKP++;
      // Opsplitter strengen hver gang der er et &, de enkelte strenge f.eks.\" navn=jakob\"
      //placeres på en ny plads i keypairs[]
  }

  keypairs[numKP] = query;
    // Tager det sidste der er tilbage i querystringen
 
  for (i in keypairs) {
    keyName = keypairs[i].substring(0,keypairs[i].indexOf(\'=\'));
      // Det til venstre for =  er navnet på formfeltet
    keyValue = keypairs[i].substring((keypairs[i].indexOf(\'=\')) + 1);
      // Og det til højre er værdien
    while (keyValue.indexOf(\'+\') > -1) {
      keyValue = keyValue.substring(0,keyValue.indexOf(\'+\')) + \' \' + keyValue.substring(keyValue.indexOf(\'+\') + 1);
        // Alle +´er i strengen udskiftes med space
    }
   
    keyValue = unescape(keyValue);
      // Returnerer ASCII-strengen istedet for den hexadecimale værdi som f.eks %26
     
    if (FORM_DATA[keyName]) {
      FORM_DATA[keyName] = FORM_DATA[keyName] + separator + keyValue;
        // Hvis et keyname allerede eksisterer må det være en med flere samtidege valg
        // og derfor danner vi en seperator delt streng ved at tilføje værdien til det vi allerede har skrevet i den første
        // dvs at flervalgsbokse udskrives som: \"valg1,valg2,valg2\"
    } else {
      FORM_DATA[keyName] = keyValue;
        // Hvis der kun er et keyname får vores Array værdien
    }
  }

  return FORM_DATA;
}

FORM_DATA = createRequestObject();
  // FORM_DATA er et array der indeholder dataene fra formen
// De hentes sådan FORM_DATA[\'formfeltnavn\']

Avatar billede joch Nybegynder
10. august 2001 - 10:39 #4
Hvor henter man dataerne...
er det dette:

FORM_DATA = createRequestObject();
  // FORM_DATA er et array der indeholder dataene fra formen
// De hentes sådan FORM_DATA[\'formfeltnavn\']

?

Avatar billede ldanielsen Nybegynder
10. august 2001 - 11:29 #5
Det kan være MEGET Enklere hvis du KUN skal bruge det til noget helt afgrænset.

Er det sådan, så beskriv det, og det kan sikkert laves med 3 linier kode
Avatar billede joch Nybegynder
10. august 2001 - 11:34 #6
Jeg skal lave et skema der skal printes. Mine navne og skemaer vil jeg gerne have over på en side nr. 2, hvor jeg så kan ligge stylesheet på!
Avatar billede ldanielsen Nybegynder
10. august 2001 - 13:45 #7
OK, så har du altså problemerne med mellemrum, linieskift, æøå mm., som den \"tunge\" løsning utvivlsomt kan klare.

Hvis det bare var et tal eller noget med ja eller nej så ...

Dog mener jeg at der er et max på 256 tegn.
Avatar billede jakoba Nybegynder
10. august 2001 - 20:28 #8
du kan undgå de + tegn og omformatteringer der sker ved get med noget java script:
http://hjem.get2net.dk/Jakob.Aggernaes/temp/exp32917.html

knappen \'send auto\' sender alle formdata til siden selv og skriver dem foroven i dokumentet.

knappen \'try get\' gør det damme, men bruger method=\'get\' til at pakke data\'ene

mvh JakobA
Avatar billede joch Nybegynder
12. august 2001 - 16:51 #9
Hej jakoba

Det her kan jeg helt sikkert bruge - takker.
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