---
title: "Snygg kod med response"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/138208-snygg-kod-med-response"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Boorg"
published: "2005-11-24T22:12:58.000Z"
updated: "2005-11-30T09:05:32.000Z"
replies: 10
views: 622
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/138208-snygg-kod-med-response"
---

# Snygg kod med response

## #1 — Boorg, 2005-11-24T22:12Z

Hej.

tänkte lite på hur det serut när man skriver en response.write.

då hammnar jhu allt på en o samma rad, och ifall man loopar ut massa kod och kör response.write så blir det juh skitfult med allt på samma rad.

Är det enda sättet o få en snygg kod att man inte andvänder response.write och istället kör allt utanför klamrarna %\>
\<td\>
blaha
\</td\>\<%

?

Mvh Jesper Borg

Permalänk: https://www.webforum.nu/p/138208

## #2 — tydal, 2005-11-24T22:28Z

Nej, du kan lägga in radbrytningar där du vill ha dem. Tecken 13 och 10. Har för mig man kunde skriva det som vbCrLf i VB-skript.

Permalänk: https://www.webforum.nu/p/1714885

## #3 — M.Cheraghi, 2005-11-24T22:34Z

```
<%
response.write "<tr>" & vbcrlf
response.write "<td>" & vbcrlf
response.write "</td>" & vbcrlf
response.write "</tr>" & vbcrlf
%>
```

Eller

```
<%
response.write "<tr>" & vbcrlf & "<td>" & vbcrlf & "</td>" & vbcrlf & "</tr>"
%>
```

Båda fungerar, det är väl en smaksak, och hur lätt man vill kunna skumma igenom sin ASP kod osv. Förmodar att variant ett är något långsammare, dock är det ingen märkbar skillnad, men om man kör det i en "bromsbänk" är nog alternativ två effektivare. Min gissning dock, kan inte garantera!

Permalänk: https://www.webforum.nu/p/1714887

## #4 — Boorg, 2005-11-24T22:37Z

> **tydal skrev:**
>
> Nej, du kan lägga in radbrytningar där du vill ha dem. Tecken 13 och 10. Har för mig man kunde skriva det som vbCrLf i VB-skript.

Det e klart man göra det! Tackar så mycket

Mvh Jesper Borg   :bire

Permalänk: https://www.webforum.nu/p/1714888

## #5 — Erik Juhlin, 2005-11-25T07:46Z

> **M.Cheraghi skrev:**
>
> Båda fungerar, det är väl en smaksak, och hur lätt man vill kunna skumma igenom sin ASP kod osv. Förmodar att variant ett är något långsammare, dock är det ingen märkbar skillnad, men om man kör det i en "bromsbänk" är nog alternativ två effektivare. Min gissning dock, kan inte garantera!

Tvärtom, alternativ ett är bra mycket snabbare. I alternativ två måste den konkatenera vilket VB/VBScript inte gillar.

Även att bygga saker i Array:er och joina är effektivt.
Därför det finns hemmasnickrade StringBuilders som bygger på detta.

```
Dim vData(3)
vData(0) = "<tr>"
vData(1) = "<td>"
vData(2) = "</td>"
vData(3) = "</tr>"
Response.Write Join(vData, vbCrLf)
```

Men vill man ha kod som är lättläst och lätt att underhålla så är context-switchar att föredra.

Permalänk: https://www.webforum.nu/p/1714947

## #6 — M.Cheraghi, 2005-11-25T12:54Z

> **Erik Juhlin skrev:**
>
> Tvärtom, alternativ ett är bra mycket snabbare. I alternativ två måste den konkatenera vilket VB/VBScript inte gillar.

Där ser man! :)
Lär sig något nytt varje dag! :)

Permalänk: https://www.webforum.nu/p/1715058

## #7 — J.N., 2005-11-28T11:03Z

HEJ!

Man blir ju rätt trött efter ett tag att skriva VbCrLf eller VbTab. ;) 

Därför inkluderar jag följande snutt i general.asp (motsv) och kan därför använda de korta variabelnamnen istället.

```
Dim e, t, et, e2, t2, e2t, e3, e3t, e4t
e=VbCrLf: t=VbTab: et=VbCrLf&VbTab: e2=VbCrLf&VbCrLf: t2=VbTab&VbTab
e2t=VbCrLf&VbTab&VbTab (osv, har använt e4t inbland)

(annan kod, med ett tab in) &et
response.write "<table>" &e2t 'vill ha tabellen två tab in
response.write "<tr>" &e2t
response.write "<td>" &e2t
response.write "</td>" &e2t
response.write "</tr>" &e2t
response.write "</table>" &et 'återställer med ett tab in
```

Permalänk: https://www.webforum.nu/p/1719045

## #8 — Erik Juhlin, 2005-11-28T22:04Z

Om du nu är så inne på att bygga allt som VBScript strängar så kan du väl i alla fall göra en funktion som spottar ut visst antal tabbar och radbrytningar.
Eller strunta i tabbar och radbrytningar i HTML-koden. Webbläsaren bryr sig inte om dem.

Eller varför inte bara skriva så här?

```
<table>
	<tr>
		<td>
		</td>
	</tr>
</table>
```

10 gånger vettigare att skriva kod som är lättläst på serversidan än som är lättläst på klientsidan.

Permalänk: https://www.webforum.nu/p/1719327

## #9 — J.N., 2005-11-29T13:00Z

HEJ!

> **Erik Juhlin skrev:**
>
> Om du nu är så inne på att bygga allt som VBScript strängar så kan du väl i alla fall göra en funktion som spottar ut visst antal tabbar och radbrytningar.
> Eller strunta i tabbar och radbrytningar i HTML-koden. Webbläsaren bryr sig inte om dem.
> 
> Eller varför inte bara skriva så här?
>
>
> ```
> <table>
> 	<tr>
> 		<td>
> 		</td>
> 	</tr>
> </table>
> ```
>
> 
> 10 gånger vettigare att skriva kod som är lättläst på serversidan än som är lättläst på klientsidan.

Naturligtvis använder jag inte detta för rå html, liksom att Boorg och M.Cheraghi troligtvis inte heller gör det.
Jag byggde vidare på det exempel de diskuterade för att det ska vara enkelt för andra att se skillnader.

När jag skapar javascript är det mycket enklare att se resulterande kod, eller om man vill göra html-kod mer lättläst. Allt för att undvika dumma fel, och dessutom ska det vara snyggt kodat!

Permalänk: https://www.webforum.nu/p/1719532

## #10 — Erik Juhlin, 2005-11-29T21:37Z

Det menar jag inte heller. Man kan lätt hoppa mellan HTML och ASP med hjälp av \<%%\>.

Ett vettigare sätt för att skriva ut rader annars...

```
Sub WriteLine(sText, lPreTabCount, lPostBreakCount)
	Dim i
	For i = 1 To lPreTabCount
		Response.Write vbTab
	Next 'i
	Response.Write sText
	For i = 1 To lPostBreakCount
		Response.Write vbCrLf
	Next 'i
End Sub

WriteLine "foo", 1, 1
```

Permalänk: https://www.webforum.nu/p/1719723

## #11 — J.N., 2005-11-30T09:05Z

HEJ!

Intressant lösning! Har tidigare sett funktioner som gör att det räcker skriva tex "r variabel" där funktionen "r" endast innehåller response.write; man slipper alltså skriva detta varje gång. Snabbt och effektivt!

Jag använder Auto Completion i HomeSite, skriver "res", så kommer resten av sig själv. Lite jobbigt att skriva "resultat" eller "adress" dock...

Permalänk: https://www.webforum.nu/p/1719814

---

Tråden på webben: https://www.webforum.nu/amne/asp/138208-snygg-kod-med-response
