/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Kan loop ikke fungere med Javascript ?
Fra : Jakob Munck


Dato : 01-09-01 23:04

Efter at have knoklet i lang tid er det lykkedes mig at lave et lave noget
kode, der gør at når man klikker på et link, åbnes der et popup vindue og
til dette sendes der en querystring med variable, der gør at man i dette
vindue kan vise en brugers indtastede oplysninger. Det hele fungerer,
undtagen det, at man åbenbart ikke kan loope med et Javascript.

På den linie, hvor jeg har skrevet ++ foran linien vises "rs("brugerNavn")"
korrekt, altså forskelligt for hver record der vises af recordsættet. Men
der hvor jeg har skrevet ++++ foran linien, altså i Javascriptet, der vises
variablen som den samme, uanset hvor i recordsættet man er. Der sendes altså
den samme quarystring til popup-vinduet, uanset hvilken record man vælger,
og det er ikke godt.

Altså: Hvordan får jeg variablen i linien med ++++ til at "loope" ligesom
den samme variabel gør, når den er en del af et link?

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

<%
do until rs.eof
%>

<td valign="top" class="lille">

++ <A HREF=Javascript:se_profil()><%=rs("brugerNavn")%></A>

<script LANGUAGE="JavaScript">
function se_profil(){
{
++++ window.open("lille_profil.asp?brugernavn=<%=rs("brugerNavn")%>",
'newwindow',
'width=260,height=285,resizable=1,status=0,left=300,top=200,menubar=0,scroll
bars=0,toolbar=0,location=0,directories=0');
}
}
</SCRIPT>

</td>
</tr>

<%
rs.MoveNext
loop
%>
-------------------------------------------

Jeg håber det er forståeligt, og glæder mig til at høre forslag til en
løsning.

v.h.
Jakob Munck



 
 
Steffen Tiedemann Ch~ (02-09-2001)
Kommentar
Fra : Steffen Tiedemann Ch~


Dato : 02-09-01 12:47

Kan man ikke bruge :

while (!rs.eof()) {
.....
}

--
Steffen Tiedemann Christensen
steffen@infotouch.dk



Jakob Munck (02-09-2001)
Kommentar
Fra : Jakob Munck


Dato : 02-09-01 14:19


> Kan man ikke bruge :
>
> while (!rs.eof()) {
> .....
> }
>

Jeg har ikke forstand på Javascript, så jeg kan ikke se hvordan ovenstående
kode skal passes ind i den kode jeg p.t anvender. Kunne du skrive den fulde
kode, som du mener jeg skal prøve?

v.h.
Jakob Munck



Lars Hoffmann (02-09-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 02-09-01 17:01

Jakob Munck wrote:
>
> Efter at have knoklet i lang tid er det lykkedes mig at lave et lave noget
> kode, der gør at når man klikker på et link, åbnes der et popup vindue og
> til dette sendes der en querystring med variable, der gør at man i dette
> vindue kan vise en brugers indtastede oplysninger. Det hele fungerer,
> undtagen det, at man åbenbart ikke kan loope med et Javascript.

Du prøver på intet tidspunkt at loope med javascriptet. Du looper med
ASp koden.

> Altså: Hvordan får jeg variablen i linien med ++++ til at "loope" ligesom
> den samme variabel gør, når den er en del af et link?

Det ønsker du jo ikke at gøre. Så vil u ende med at have x antal
funktioner der hedder det samme men sender forskellige querystrings til
browseren, og det går jo ikke. Brug istedet parametre til din funktion
således:



<script LANGUAGE="JavaScript">
function se_profil(bruger){
{
window.open('lille_profil.asp?brugernavn=bruger','newwindow','width=260,height=285,resizable=1,status=0,left=300,top=200,menubar=0,scrollbars=0,toolbar=0,location=0,directories=0');
}
}
</SCRIPT>



<%
do until rs.eof
%>

<td valign="top" class="lille">

<A
HREF=Javascript:se_profil('<%=rs("brugerNavn")%>')><%=rs("brugerNavn")%></A>

</td>
</tr>

<%
rs.MoveNext
loop
%>

Det skulle kunne gøre tricket

Jakob Munck (02-09-2001)
Kommentar
Fra : Jakob Munck


Dato : 02-09-01 18:46

Mange tak for koden. Den er nok en stor forbedring af min kode, men den
virker stadig ikke, da den - uanset hvilken af de viste brugere man klikker
på - sender variablen "bruger" med over i querystrengen, og dermed kan
pop-up vinduet ikke finde ud af hvilken bruger det skal vise.

I stedet har jeg derfor prøvet at udskifte ordet "bruger" i den linie med
++++ med variablen "<%=rs("brugerNavn")%>", men så var jeg tilbage til det
gamle problem, at den hele tiden viser den øverste record i recordsættet,
altså den samme person, uanset hvor jeg klikker.

Der er altså stadig en fejl, og jeg vil blive meget glad hvis du (eller
andre) kan finde den. Selv er jeg, som det forstås, temmelig uduelig til
Javascript.

v.h.
Jakob Munck



"Lars Hoffmann" <lars@hoffmann.ac> skrev i en meddelelse
news:3B9257D4.B27561D4@hoffmann.ac...
> Jakob Munck wrote:
> >
> > Efter at have knoklet i lang tid er det lykkedes mig at lave et lave
noget
> > kode, der gør at når man klikker på et link, åbnes der et popup vindue
og
> > til dette sendes der en querystring med variable, der gør at man i dette
> > vindue kan vise en brugers indtastede oplysninger. Det hele fungerer,
> > undtagen det, at man åbenbart ikke kan loope med et Javascript.
>
> Du prøver på intet tidspunkt at loope med javascriptet. Du looper med
> ASp koden.
>
> > Altså: Hvordan får jeg variablen i linien med ++++ til at "loope"
ligesom
> > den samme variabel gør, når den er en del af et link?
>
> Det ønsker du jo ikke at gøre. Så vil u ende med at have x antal
> funktioner der hedder det samme men sender forskellige querystrings til
> browseren, og det går jo ikke. Brug istedet parametre til din funktion
> således:
>
>
>
> <script LANGUAGE="JavaScript">
> function se_profil(bruger){
> {
>
window.open('lille_profil.asp?++++brugernavn=bruger','newwindow','width=260,
height=285,resizable=1,status=0,left=300,top=200,menubar=0,scrollbars=0,tool
bar=0,location=0,directories=0');
> }
> }
> </SCRIPT>
>
>
>
> <%
> do until rs.eof
> %>
>
> <td valign="top" class="lille">
>
> <A
>
HREF=Javascript:se_profil('<%=rs("brugerNavn")%>')><%=rs("brugerNavn")%></A>
>
> </td>
> </tr>
>
> <%
> rs.MoveNext
> loop
> %>
>
> Det skulle kunne gøre tricket



Lars Hoffmann (02-09-2001)
Kommentar
Fra : Lars Hoffmann


Dato : 02-09-01 19:13

Jakob Munck wrote:
>
> Mange tak for koden. Den er nok en stor forbedring af min kode, men den
> virker stadig ikke, da den - uanset hvilken af de viste brugere man klikker
> på - sender variablen "bruger" med over i querystrengen, og dermed kan
> pop-up vinduet ikke finde ud af hvilken bruger det skal vise.

> I stedet har jeg derfor prøvet at udskifte ordet "bruger" i den linie med
> ++++ med variablen "<%=rs("brugerNavn")%>", men så var jeg tilbage til det
> gamle problem, at den hele tiden viser den øverste record i recordsættet,
> altså den samme person, uanset hvor jeg klikker.

Hold alt hvad der hedder <%=brugernavn%> langt væk fra din javascript
funktionen. Ellers vil den ikke være generisk og altså kun fungere med
en enkelt bruger.
husk også at selve funktionen IKKE skal ligge inde i din loop. Du skal
jo kun udskrive funktionen en enkelt gang.

Jeg har lige rettet det til så det virker , din javascript funktion
bør se således ud:


<script LANGUAGE="JavaScript">
function se_profil(bruger)
{

window.open('lille_profil.asp?brugernavn='+bruger,'newwindow','width=260,height=285,resizable=1,status=0,left=300,top=200,menubar=0,scrollbars=0,toolbar=0,location=0,directories=0');

}
</SCRIPT>

Jakob Munck (02-09-2001)
Kommentar
Fra : Jakob Munck


Dato : 02-09-01 20:38

Så kører den !!!!!

Juhuuu....

Tusind tak - endnu en gang - til dig Lars Hofmann og de bedste hilsner fra

Jakob Munck



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste