webForumDet fria alternativet

Enkel funktion?

ASP

9 svar · 439 visningar · startad av ConnyFox

Medlem sedan aug. 20011 087 inlägg
Frågan#1

jag vill ha en funktion som gör något så enkelt som att skriva ut några rader html på dom ställerna man kallar på den.

Så att istället för att skriva dessa 20 rader på 100 ställen och då även behöva ändra på 100 ställen om något skall ändras så ändrar man bara i själva funktionen.

Ett pluspoäng är om det går att göra så att man kan använda den så att det skrivs ut på följande vis :

*första delen av html koden som finns i funktionen skrivs ut*

här kan man skriva vad man vill som är olika på alla ställen man kallar på funktionen

*Andra delen av html koden som finns i funktionen skrivs ut*

det vill säga att man kan specificera 2 olika delar i funktionen och när man kallar på funktionen så kan man även ange något som skall stå imellan dessa 2 delar.
T.ex att första delen är topdelen på en tabell kod, det man skriver imellan är innehållet i tabellen och andra delen i funktionen är avslutningsdelen av en tabell.

Hoppas jag avrit tillräckligt tydlig ;D

Medlem sedan juni 200032 967 inlägg
#2
sub writehtml(intpart)
   select case intpart
       case 1
            Response.write "<html><body>blablabla"
       case 2
            Response.write "blablabla</body></html>"
    end select
end sub
 ' skriv ut första html-delen
writehtml 1
 ' gör saker
 ' skriv ut andra html-delen
writehtml 2
Medlem sedan aug. 20011 087 inlägg
#3

jaså det var inte svårare än så, tackar!

Medlem sedan aug. 20011 087 inlägg
#4

En följdfråga bara, jag upptäckte att det var tvunget att vara siffror. varför kan man inte skriva writehtml del1 och writehtml del2 istället?

dessutom skulle jag vilja ha en lite smidigare funktion.

där man kan ange några olika saker när man kallar funktionen

kanske något sådanthär?!

skrivtabell("Rubrik", "Innehåll", bredd, höjd)

och att den då skriver ut detta

<table width="bredd" height="höjd">
<tr>
<td>
rubrik
</td>
</tr>
<tr>
<td>
Innehåll
</td>
</tr>
</table>
Medlem sedan juni 200032 967 inlägg
#5

En följdfråga bara, jag upptäckte att det var tvunget att vara siffror. varför kan man inte skriva writehtml del1 och writehtml del2 istället?

Vad menar du? Du kan lika gärna kalla på funktionen med WriteHTML "del2" istället.

dessutom skulle jag vilja ha en lite smidigare funktion.
där man kan ange några olika saker när man kallar funktionen
kanske något sådanthär?!
skrivtabell("Rubrik", "Innehåll", bredd, höjd)

sub skrivtabell(strHeader, strContent, intWidth, intHeight)
	Response.write ""<table width=""" & intWidth & """ height=""" & intHeight & """>" & vbCrlf & _
		"<tr><td>" & strHeader & "</td></tr>" & vbcrlf & _
		"<tr><td>" & strContent & "</td></tr>" & vbCrlf & _
		"</table>"
End sub

Det är inte speciellt svårt att använda sig av funktioner eller subrutiner. Du bestämmer ju själv vad som skall tas emot, och hur du sedan använder det som skickas in.

mvh

Medlem sedan aug. 20011 087 inlägg
#6

tack så mycket, jo jag vet inte varför jag inte redan lärt mig detta, har i stort sett bara behövt använda mig av databaser innan. tack så mycket iaf!

Medlem sedan aug. 20011 087 inlägg
#7

@nders, hur kallar jag på funktionen sedan? och hur gör jag ifall jag vill ha t.ex så att strHeader är <img src="bild.gif">

får detta felmeddelande

det går inte att använda parenteser när en Sub anropas.
/stajlsajten 2005/Default.asp, line 11, column 37
topbox("apa", "apa", "apa", 100, 100)
------------------------------------^

när jag skriver såhär

topbox("apa", "apa", "apa", 100, 100)

Medlem sedan juni 200032 967 inlägg
#8

du kallar på subrutinen ungefär som du skrev,

skrivtabell "blah", bluh, 150, 700

Du kan skicka vilka strängar som helst till de fyra parametrarna, så vill du skicka in en bildtagg så är det bara att lägga den i en sträng och skicka in.

Medlem sedan juni 200032 967 inlägg
#9

Felmeddelandet får du för att du inte får använda parenteser när du anropar en sub. Maken till felmeddelande i klartext finns nog inte. ;)

Medlem sedan aug. 20011 087 inlägg
#10

Aha.. oj ;) ja då har man lärt sig något nytt då iaf :D

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