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

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Problem med replace
Fra : David Trasbo


Dato : 25-07-05 12:08

Det er nu første gang jeg arbejder med replace men jeg kan desværre ikke få
det til at virke. Jeg trækker min menu ud fra en database og tekst mellem
[a] og [/a] skal markeres som accesskey. Jeg har prøvet med følgende:

Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
Replace(rs("Accesskeytext"), "[/a], "</span>")

Så får jeg allerede i første linje af ovenstående eksempel denne fejl:

Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0414)
Der kan ikke bruges parenteser ved kald af en Sub
/site/includes/allmenu.inc, line 23, column 67
Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")

--
David Trasbo.
http://indexpage.dk




 
 
Kasper Lindberg (25-07-2005)
Kommentar
Fra : Kasper Lindberg


Dato : 25-07-05 12:37


"David Trasbo" <datra@mail.dk> skrev i en meddelelse
news:42e4c80e$0$18648$14726298@news.sunsite.dk...
> Det er nu første gang jeg arbejder med replace men jeg kan desværre ikke
> få
> det til at virke. Jeg trækker min menu ud fra en database og tekst mellem
> [a] og [/a] skal markeres som accesskey. Jeg har prøvet med følgende:
>
> Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
> Replace(rs("Accesskeytext"), "[/a], "</span>")
>
> Så får jeg allerede i første linje af ovenstående eksempel denne fejl:
>
> Der opstod en Microsoft VBScript-kompileringsfejl (0x800A0414)
> Der kan ikke bruges parenteser ved kald af en Sub
> /site/includes/allmenu.inc, line 23, column 67
> Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
>

lyder mærkeligt

replace returnerer en tekststreng, så prøv at gemme det i en variabel

f.eks.
txt=Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
response.write(txt)

hvad sker der?

ellers må du nedbryde linien.
den klager sandsynligvis over dit rs("Accesskeytext"),
prøv at hente det alene

txt=rs("Accesskeytext")
response.write(txt)

virker det?

/Kasper



Tomasz Otap (25-07-2005)
Kommentar
Fra : Tomasz Otap


Dato : 25-07-05 12:52

Kasper Lindberg proclaimed as follows:
>>Det er nu første gang jeg arbejder med replace men jeg kan desværre ikke
>>få
>>det til at virke. Jeg trækker min menu ud fra en database og tekst mellem
>>[a] og [/a] skal markeres som accesskey. Jeg har prøvet med følgende:
>>
>>Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
>>Replace(rs("Accesskeytext"), "[/a], "</span>")
> lyder mærkeligt
>
> replace returnerer en tekststreng, så prøv at gemme det i en variabel
>
> f.eks.
> txt=Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
> response.write(txt)


Jep. Hvis du blot skriver Replace uden at gemme resultatet i en
variabel, opfattes det som et kald til en Sub frem for en Function. En
Sub kan i VBscript kaldes på to måder: med eller uden parenteser. Kalder
du den med parenteser, skal du bruge kommandoen call foran sub-navnet:

call Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")

Eller du kan kalde en sub uden at bruge parenteser:

Replace rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>"

Replace returnerer dog en tekststreng som resultat, derfor skal
resultatet sættes i en variabel (som vist af Kasper) eller udskrives på
skærmen (f.eks. response.write replace(noget, andet, streng) ). Ellers
er der ikke meget mening i at kalde den. :)

t

--
Aequitas sequitur funera

David Trasbo (25-07-2005)
Kommentar
Fra : David Trasbo


Dato : 25-07-05 13:58

> txt=rs("Accesskeytext")
> response.write(txt)
>
> virker det?

Jeg får resultatet:
<span class='accesskey'>F[/a]orsiden[a]F</span>orsiden

Fatter det ikke??

--
David Trasbo.
http://indexpage.dk



Kasper Lindberg (25-07-2005)
Kommentar
Fra : Kasper Lindberg


Dato : 25-07-05 21:22


"David Trasbo" <datra@mail.dk> skrev i en meddelelse
news:42e4e1f5$0$18640$14726298@news.sunsite.dk...
>> txt=rs("Accesskeytext")
>> response.write(txt)
>>
>> virker det?
>
> Jeg får resultatet:
> <span class='accesskey'>F[/a]orsiden[a]F</span>orsiden
>
> Fatter det ikke??
>

gør jeg måske.
Hvis jeg gætter rigtigt så har du gjort noget ala

txt=Replace(rs("Accesskeytext"), "[a]", "<span class=%22accesskey%22>")
response.write(txt)
txt=Replace(rs("Accesskeytext"), "[/a], "</span>")
response.write(txt)

rigtigt?

det du skal gøre er

txt=rs("Accesskeytext")
txt=Replace(txt, "[a]", "<span class=%22accesskey%22>")
txt=Replace(txt, "[/a], "</span>")
response.write(txt)


/Kasper



David Trasbo (26-07-2005)
Kommentar
Fra : David Trasbo


Dato : 26-07-05 10:27


> det du skal gøre er
>
> txt=rs("Accesskeytext")
> txt=Replace(txt, "[a]", "<span class=%22accesskey%22>")
> txt=Replace(txt, "[/a], "</span>")
> response.write(txt)

Nu får jeg følgende resultat:

<span class=%22accesskey%22>F</span>orsiden

<p><a href="/default.asp" title="Gå til: Forsiden [Accesskey 'f']"
accesskey="f">[a]F[/a]orsiden</a></p>



David Trasbo (26-07-2005)
Kommentar
Fra : David Trasbo


Dato : 26-07-05 10:54

> > det du skal gøre er
> >
> > txt=rs("Accesskeytext")
> > txt=Replace(txt, "[a]", "<span class=%22accesskey%22>")
> > txt=Replace(txt, "[/a], "</span>")
> > response.write(txt)
>
> Nu får jeg følgende resultat:
>
> <span class=%22accesskey%22>F</span>orsiden
>
> <p><a href="/default.asp" title="Gå til: Forsiden [Accesskey 'f']"
> accesskey="f">[a]F[/a]orsiden</a></p>

Nåår. Jeg fjernede Response.Write txt efter efter replace og erstattede
Response.Write rs("accesskeytext") med Response.Write txt. Nu virker
skidtet!

--
David Trasbo.
http://indexpage.dk



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

Månedens bedste
Årets bedste
Sidste års bedste