Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 13:00 Der er 13 kommentarer og
1 løsning

Få værdier fra form uden ASP eller PHP

Hej!

Hvordan får jeg mine form værdier ud på en anden side, uden brugen af ASP eller PHP, jeg er sikker på at man kan med javascript, men hvordan?
Avatar billede -mundi- Nybegynder
08. februar 2006 - 13:06 #1
<form Method="Get"></form> som det første

<!-- nedenstående gemmes som  request.js som includes i <head> som  : <head><javascript src="request.js"></head>-->

var queryValues,queryNames,queryItems,querystring,url,hasQuerystring,temp,itemCount;
itemCount=0;

function initRequest(){
    url=document.location.href;
    start=url.indexOf("?");
    if (start==-1){hasQuerystring=false;}
    else{
        hasQuerystring=true;
        queryValues=new Array();
        queryNames=new Array();
        querystring=url.substring(start+1,url.length);
        queryItems=querystring.split("&");
        for (i=0;i<queryItems.length;i++){
            temp=queryItems[itemCount].split("=");
            queryNames[itemCount]=temp[0].toLowerCase();
            queryValues[itemCount]=temp[1];
            itemCount++;   
        }
    }
}

function request(item){
    if (hasQuerystring){
        item=item.toLowerCase();
        for (j=0;j<itemCount;j++){
            if (item==queryNames[j])
                return queryValues[j];
        }
        return '';
    }
    else
        return '';
}
onload=initRequest;

<!-- -->

<button onclick="alert(request('mitformfelt'))">Test</button>
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 13:18 #2
er der en mere simpel måde at gører det på, jeg kender navnet på alle mine felter ?
Avatar billede -mundi- Nybegynder
08. februar 2006 - 13:38 #3
Bliver det meget simplere end at inkludere en .js fil og skrive :

request('mitformfeltnavn')

?
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 13:43 #4
Hvor skal jeg gemme den js fil, i det nye dokument eller det med formen ?

hvordan gemmer jeg den fil ?

så skal jeg kigge på det!
Avatar billede -mundi- Nybegynder
08. februar 2006 - 13:47 #5
gem dette i en txt fil som du opretter med f.eks notepad, og kalder request.js

var queryValues,queryNames,queryItems,querystring,url,hasQuerystring,temp,itemCount;
itemCount=0;

function initRequest(){
    url=document.location.href;
    start=url.indexOf("?");
    if (start==-1){hasQuerystring=false;}
    else{
        hasQuerystring=true;
        queryValues=new Array();
        queryNames=new Array();
        querystring=url.substring(start+1,url.length);
        queryItems=querystring.split("&");
        for (i=0;i<queryItems.length;i++){
            temp=queryItems[itemCount].split("=");
            queryNames[itemCount]=temp[0].toLowerCase();
            queryValues[itemCount]=temp[1];
            itemCount++;   
        }
    }
}

function request(item){
    if (hasQuerystring){
        item=item.toLowerCase();
        for (j=0;j<itemCount;j++){
            if (item==queryNames[j])
                return queryValues[j];
        }
        return '';
    }
    else
        return '';
}
onload=initRequest;


Filen gemmes i samme folder som det "nye" dokument

på formen sætter du method="GET"

Action på formen sættes til at være den nye fil, feks action="filnavn.html"

i den nye fil indsætter du
<script type="text/javascript" src="request.js"></script>
imellem <head> og </head>

Derefter kan du i din nye fil bruge request('feltnavn') i javascript
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 14:05 #6
Et tillægs spørgsmål, hvordan printer jeg en side ved brug af js
Avatar billede -mundi- Nybegynder
08. februar 2006 - 14:07 #7
F.eks

<button onclick="window.print()">Print</button>
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 14:08 #8
hvoprdan får jeg værdien skrevet ud! den skal være tilgængelig på siden
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 14:12 #9
nu skriver den bare request('navn') ud på skærmen
Avatar billede -mundi- Nybegynder
08. februar 2006 - 14:15 #10
hvis det er noget der skal skrives ud på siden, så skal du lige ind og rette i request.js.

Linien med "onload=initRequest;" laves om til "initRequest();"

og for at skrive ud på siden skal du indsætte
<script type="text/javascript">document.write(request('formfeltnavn'))</script>

Der hvor du vil have værdien skrevet ud
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 14:22 #11
okay, takker, hvordan undgår jeg så den irriterende boks om at indholdet muligvis er farligt ?
Avatar billede cyberjelle Nybegynder
08. februar 2006 - 14:26 #12
Kommer ikke, når siden er uploadet til din server!
Avatar billede testpilot_dk Nybegynder
08. februar 2006 - 14:35 #13
okay, dvs. at når den kører lokalt, så kommer den frem!
Avatar billede roenving Novice
08. februar 2006 - 16:27 #14
Du kan selv ændre indstillingen i Funktioner --> Internetindstillinger --> Avanceret --> Sæt et flueben ved: Tillad aktivt indhld at køre i filer på Denne computer (næsten helt nederst)
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