Ett tips är för renare läsning av koden, ta bort onödiga <% och %>, du behöver inte ha dom på varje rad.
Servern måste starta asp kompilering för varje <%
....
------------------
// room
21 svar · 308 visningar · startad av room
Ett tips är för renare läsning av koden, ta bort onödiga <% och %>, du behöver inte ha dom på varje rad.
Servern måste starta asp kompilering för varje <%
....
------------------
// room
Har varit uppe hur många ggr som helst...
------------------
"I have to return some video tapes" - Patrick Bateman, American Psycho
jag tror faktiskt att room råkade klicka starta nytt ämne istället för skriv inlägg, för detta inlägg passar mycket väl in på en annan tråd precis i närheten... :)
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
Ooops, sorry då :r
------------------
"I have to return some video tapes" - Patrick Bateman, American Psycho
Hmm, för oss nybörjare var det bra o veta att för många <%%> segar ner :e
------------------
.:' Jolt ':.
dessutom blir det ju alldeles fantastiskt mer svårläst och massor med fler tangenttryckningar.
man ska inte göra det jobbigare än det är...
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
japp, sån är jag! :)
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
all your base are belong to us!</A>
NI har så rätt så rätt. Inlägget var menat till Sensei som svar på Loop nånting ;))..
------------------
// room
Men nu snälla herrar Och (finns det ngon dam här) hur fixar man följande exempel utan <% %> ?
<% if val Then %>
<input type="checkbox" name="<% =n %>" checked>
<% Else %>
<input type="checkbox" name="<% =n %>">
<% End If %>
/
/HMMM?
------------------
Tänkte inte på de'
Kanske nåt i denna stilen?
<%
if val Then
response.write "<input type='checkbox' name=' % =n % ' checked>"
Else
response.write "<input type='checkbox' name=' % =n % '>"
End If
%>
Obs! Har nu inte så bra koll på fnuttar...
------------------
Skriv ut den med response.write så ser du vad som är fel.
du kan ju inte fixa det helt utan, men med en start och en slut. jag räknar till 8 onödiga start- eller slutmarkeringar.
<% if val Then
response.write "<input type=""checkbox"" name=""" & n & """ checked>"
Else
response.write "<input type=""checkbox"" name=""" & n & """>"
End If %>
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
someone set us up the bomb!</A>
Testa detta:
<%
if val Then
Response.write "<input type=""checkbox"" name="""&n&""" checked>"
Else
Response.write "<input type=""checkbox"" name="""&n&""">"
End If
%>
------------------
webEye.nu SweQuake.com
Det funkar lika bra med ' som ""?
------------------
Skriv ut den med response.write så ser du vad som är fel.
jo, det funkar lika bra med apostrof, som tecknet heter, och dubbla citationstecken (som de heter ;) ).
jag är allergisk mot användandet av apostrofer i html-kod, men jag medger att det är lättare att läsa då man skapar html med asp.
@e: jag var först! :e
mvh,
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
someone set us up the bomb!</A>
Roland tackar för tre intressanta lösningar som jag skall testa och kolla vidare på. Gott att få bra tips som ju även snyggar upp asp-koden med. Hoppas på mer 'snack' om bra effektivare kod så man får håller ständig koll på tips här.
------------------
Tänkte inte på de'
rent praktiskt så är det inte antalet <% %> som är krävande (om man nu kan använda den termen) allt som är inom dessa tecken tolkas av scriptmotorn i asp.dll modulen. Det andra skickas direkt ut till HTTP strömmen (beroende på responsebufferten) Så om det är 5 rader med <% %> eller 50 spelar ingen större roll. Det som spelar roll är contextswitchningen dvs. Om man blandar <% %> med HTML. Då måste scriptmodulen tolka små bitar av kod, och skicka detta, tillsammans med små bitar av HTML. Det kan vara tidsödande.
Idealet är enbart ASP script, då arbetar scriptmotorn för fullt, förutom avbrott till ex. serverobjekt. I dessa fall arbetar scriptmotorn för fullt (vissa kallar det för krävande, jämfört med att bara sända HTML) men då får man ut max processortid per timeslice.
/T
------------------
"Den som väntar på någon som gått behöver inte vänta längre..."
Jag har börjat att Response.Write:a all min HTML kod.
Först så gör jag en include fil, som ser ut typ så här:
Include.ASP
<%
Sub pageHeader
Response.Write String(0,9) & "<HTML>" & vbCrLf
Response.Write String(1,9) & "<HEAD>" & vbCrLf
....
Response.Write String(1,9) & "<BODY> & vbCrLf
End Sub
Sub pageFooter
Response.Write String(1,9) & "</BODY>" & vbCrLf
Response.Write String(0,9) & "</HTML>" & vbCrLf
End Sub
%>
Sen includerar man bara Include.ASP i sina sidor:
Default.ASP
<!-- #INCLUDE FILE="Include.ASP" -->
<%
Call pageHeader
... resten av ASP koden..
Call pageFooter
%>
.. Så har man hela sin sida Response.Write:ad.
String() och vbCrLf är bara för att få en överskådlig HTML kod, så de kan man skita i om man inte bryr sig om den.
Om det är prestanda du är ute efter, så varför inte bara
Response.Write "<HTML><HEAD>"&thetitle&"</HEAD><BODY>"
osv.
spelar väl ingen roll om det blir radbrytningar i HTML koden eller inte?
/T
------------------
"Den som väntar på någon som gått behöver inte vänta längre..."