Avatar billede thomas_regin Nybegynder
19. september 2002 - 10:50 Der er 9 kommentarer og
1 løsning

Fra Javascript til ASP.

Hejsa!

I min applikation samler jeg en masse data op i et javascript loop. Disse data vil jeg nu MEGET gerne ha' fat i, så jeg kan smide dem ind i SQL-server via ASP. Men hvordan?

Her er et eksempel på mit problem:

myObj = document.all.tags("SPAN");
for (i = 0;i < myObj.Lengh, i++)
{
//Smid både innerHTML og ID ind i SQL-server eller noget andet, som jeg kan få fat i fra ASP
myVar += myObj.innerHTML + "/" + myObj.id;
}

myVar behøver ikke at splitte værdierne med "/". Det er kun et eksempel. Det ultimative ville selvfølgelig være, at jeg kunne poste direkte i SQL-server, men det er nok utopisk!

Håber, at i forstår, og kan hjælpe mig!

På forhånd tak,

Thomas Regin.
Avatar billede tknudsen Nybegynder
19. september 2002 - 10:59 #1
der er flere måder at gøre det på...

1) window.open - åbner nyt dokument, hvori du skriver data i en form og submiter den til serveren
2) hidden ifram - samme princip som 1
3) http request - en activex komponent, som ligger i ie5+ (ie5.5+ ?)
Avatar billede thomas_regin Nybegynder
19. september 2002 - 11:05 #2
Tknudsen,

Det lyder meget interessant! Har du et eksempel på, hvordan jeg kan poste mig ud af dette?

Når du siger http request, så formoder jeg, at du taler om MS XML HTTP Request, ikke? Den har jeg rodet en del med, men jeg er ikke helt sikker på, hvordan jeg får den til at æde samtlige værdier fra mit loop, da jeg hovedsagelig har brugt den fra VB.

Med venlig hilsen,

Thomas Regin.
Avatar billede tknudsen Nybegynder
19. september 2002 - 11:12 #3
Jo - det er XMLHTTP...

Her er et eksempel på 2'eren (hidden form):

Opbyg en "url":
<script>

var strURL = 'sti_til_asp_fil';
strURL += '?var1='+document.getElementById('var1').value;
strURL += '&var1='+document.getElementById('var1').value;

var frm = document.data;
frm.locaion.href = strURL;

<script>


<body>
<iframe name="data" style="display:none"></iframe>
</body>
Avatar billede thomas_regin Nybegynder
19. september 2002 - 11:16 #4
Tknudsen,

Okay, så det du lægger op til, er at lægge værdierne fra mit loop i en querystring, og så poste den fra en hidden form i iframe'n? Men hvis jeg allerede har alle værdierne i querystringen, så er der vel ingen grund til at lave en post!?

Undskyld, hvis jeg spørger dumt! ;)

Thomas.
Avatar billede tknudsen Nybegynder
19. september 2002 - 11:19 #5
næh - hvis du allerede har værdierne i "querystrengen" på klienten, betyder det jo at serveren også kender dem, og så er der ingen grund til at sende dem til klienten først !?!?!
Avatar billede thomas_regin Nybegynder
19. september 2002 - 11:29 #6
Tknudsen,

Det du lægger op til, er da at lægge værdierne op i querystringen, ikke?

Ellers er jeg ikke helt sikker på, hvad du mener med:

strURL += '?var1='+document.getElementById('var1').value;
strURL += '&var1='+document.getElementById('var1').value;

Thomas.
Avatar billede tknudsen Nybegynder
19. september 2002 - 11:42 #7
jo - jeg vil ligge dem i url'en, så du kan få fat i dem i asp via request.querystring
Avatar billede thomas_regin Nybegynder
19. september 2002 - 11:47 #8
Yes!.. Jeg har forstået det!.. ;)

Jeg kigger lige lidt på det, og så kommer jeg tilbage for at give dig nogle points!

Det eneste problem i dette her, er sådan set at der foreligger en mulighed for, at der bliver for mange værdier til at querystring'en kan klare det!

Tak for hjælpen!

Thomas
Avatar billede tknudsen Nybegynder
19. september 2002 - 11:51 #9
Hvis det er et potentielt problem kan du gøre det sådan her:

i den hidden form laver du en side, som indeholder:

<body>
<div id="data">
</div>
</body>


og din strURL skal så de sådan her ud:

strURL = '<form action="sti_til_asp_fil" method="post">';
strURL += '<input type="hidden" name="var1" value="'+document.getElementById('var1').value'">';
strURL += '<input type="hidden" name="var2" value="'+document.getElementById('var2').value'">';
strURL += '</form>';

frm.data.data.innerHTML = strURL;
form.forms[0].submit();

På den måde opbygger du en form, skriver den til den hiiden iframe og submiter former via post-metoden. Så er der (vist nok) ingen begrænsninger for størrelse af data.
Avatar billede thomas_regin Nybegynder
19. september 2002 - 12:15 #10
Herligt!.. Nu virker det næsten!. Nu er der kun tilrettelsen i ASP tilbage!!.. Perfekt!

Jeg takker mange gange for din hjælp!!! :)

Med venlig hilsen,

Thomas.
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