---
title: "Loopa ut snyggt"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/128764-loopa-ut-snyggt"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Asa"
published: "2005-05-24T08:16:59.000Z"
updated: "2005-05-25T08:45:18.000Z"
replies: 10
views: 333
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/128764-loopa-ut-snyggt"
---

# Loopa ut snyggt

## #1 — Asa, 2005-05-24T08:16Z

Hur loopar man ut i denna slinga så varje undermeny kommer ex 2 blanksteg till höger hela tiden?

```
<%Sub DoTree(HuvudID, intLevel)
  Set RS = Conn.Execute("SELECT kategoriID,kategori,ukategori FROM shop_asp_kategorier WHERE ukategori = " & HuvudId)
    If Not RS.EOF Then
      Do Until RS.EOF
         strAntal=Conn.Execute("Select Count(*) From shop_asp_kategorier WHERE ukategori = " & HuvudId).Fields(0)%>
         <option value="<%=RS(0)%>" <%If RS(2) = 0 Then%>style="background-color:#eaeaea"<%End If%>><%=RS(1)%></option>
         <%DoTree rs("kategoriID"), intLevel + 1
      RS.MoveNext
      Loop
    End If
  RS.Close:Set RS=Nothing
End Sub

DoTree 0,0%>
```

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

## #2 — tydal, 2005-05-24T08:30Z

Sub PrintSpace(n)
For i = 1 to n
response.write(" ")
Next
End Sub

Sen är det bara att du anropar den där du vill ha mellanslagen, med en variabel som du ökar med 2 efter varje gång du kört.

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

## #3 — Asa, 2005-05-24T08:33Z

Okej! Tackar för det!

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

## #4 — J.N., 2005-05-24T08:42Z

HEJ!

Det snyggaste vore väl att använda String-funktionen för det?
<http://www.devguru.com/Technologies/vbscript/quickref/string.html>

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

## #5 — tydal, 2005-05-24T17:49Z

Ja, jag kanske borde lagt till att jag inte hållt på med Visual Basic sen 1992.

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

## #6 — Erik Juhlin, 2005-05-24T21:10Z

Om man bara vill ha mellanslag så är väl Space funktionen vettigast.

```
Response.Write Space(23)
```

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

## #7 — J.N., 2005-05-25T08:21Z

HEJ!

> **Erik Juhlin skrev:**
>
> Om man bara vill ha mellanslag så är väl Space funktionen vettigast.
>
>
> ```
> Response.Write Space(23)
> ```

Ja, det är den!
Visste att det fanns en funktion i String för detta, men Space har jag inte behövt använda.

Fast, nu när jag tittar på
<http://www.devguru.com/Technologies/vbscript/quickref/space.html>
undrar jag om det löser Asas problem; mellanslagen försvinner, eftersom endast ett visas i html?

Det innebär också att String inte är mycket bättre...

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

## #8 — @nders, 2005-05-25T08:23Z

Ska det vara så, så...

```
Response.Write Replace(Space(23), " ", "&amp;nbsp;")
```

 ;)

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

## #9 — Jesper T, 2005-05-25T08:27Z

\<% =String(33, "&amp;nbsp;") %\>
Eller 
 \<% =Replace(space(33)," ","&amp;nbsp;" %\>

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

## #10 — @nders, 2005-05-25T08:42Z

> **Jesper T skrev:**
>
> \<% =String(33, "&amp;nbsp;") %\>

Fungerar inte. String tar ett tecken som argument, vilket innebär att koden skriver ut 33 stycken &amp;.

mvh

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

## #11 — J.N., 2005-05-25T08:45Z

HEJ!

> **Jesper T skrev:**
>
> \<% =String(33, "&amp;nbsp;") %\>

Kommer inte att fungera, eftersom jag tänkte på samma sak, för att korta koden lite till!

Du kommer att få 33 &-tecken, vilket verkar konstigt, tills man läser meningen "The Character argument is a single character."

<http://www.devguru.com/Technologies/vbscript/quickref/string.html>

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/128764-loopa-ut-snyggt
