webForumDet fria alternativet

Innehåll i variabel skrivs ut på fel ställe

ASP

2 svar · 539 visningar · startad av bigsky

Medlem sedan maj 2002821 inlägg
Frågan#1

Jag vill ersätta en variabel med värdet i en annan variabel. Rad 1 nedan fungerar perfekt. Men när jag vill ersätta variabeln med en variabel som körs igenom en funktion skrivs det nya värdet ut först innan allt annat innehåll i sString. Oavsett vart i sString som t ex. {%strCompanyEmail1%} finns och oavsett vilken funktion jag använder.

sString = Replace(sString, "{%strCompanyFax2%}", strCompanyFax2)
sString = Replace(sString, "{%strCompanyEmail1%}", AntiSpam(strCompanyEmail1, "yes"))
Function AntiSpam(ByVal strAntiSpam, strPrint)
  If Not strAntiSpam = "" Then
    arrRawEmail = Split(strAntiSpam, "@")
    arrAntiSpamEmail = Split(arrRawEmail(1), ".")
    strAntiSpam = "<a href=""javascript:NoSpam('" & arrAntiSpamEmail(1) & "." & arrAntiSpamEmail(0) & "|" & arrRawEmail(0) & "')""><script type=""text/javascript"">document.write(ConvertEmail(""" & arrAntiSpamEmail(1) & "." & arrAntiSpamEmail(0) & "|" & arrRawEmail(0) & """))</script></a>"
    If strPrint = "yes" Then
      Response.Write strAntiSpam
    End If
  End If
End Function
Medlem sedan okt. 20041 556 inlägg
#2

Varför använder du en funktion sådär?

En funktion skall alltid returnera något:
ersätt:
Response.Write strAntiSpam
med:
AntiSpam = strAntiSpam

I annat fall används en sub()

Medlem sedan maj 2002821 inlägg
#3

Tja, otillräckliga kunskaper? Många tack denna sena natt...

267 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)