Avatar billede jepper15 Nybegynder
01. september 2002 - 15:54 Der er 7 kommentarer og
1 løsning

asp, opbrydning af lange ord?

Jeg skal opbryde ord der er længere end 150 tegn, altså skal lange links opbrydes så en del af linket er på første linie, og den sidste del er på næstelinie. Hvis jeg ikke opbryder disse lange links, skubber de til min tabel, eller er der en atribut til <tabel> tagget jeg kan bruge?

- Jeppe
Avatar billede eagleeye Praktikant
01. september 2002 - 16:20 #1
du kan i en tabel angive hvor bred du  vil havde en, angiver i % eller pixels:

<table width="250">
Avatar billede jepper15 Nybegynder
01. september 2002 - 16:24 #2
Ja, men prøv selv at lav en tabel der er 50 bred, og skriv d 100 gange, så udvider den sig!
Avatar billede eagleeye Praktikant
01. september 2002 - 16:36 #3
Ja .. måske du skal prøve at oprette spørgsmålet i (D)HTML kategorien.
Avatar billede jepper15 Nybegynder
01. september 2002 - 16:42 #4
Nej, for jeg vil dele ordet med en asp
Avatar billede eagleeye Praktikant
01. september 2002 - 17:21 #5
Så må du tjekke på hvor mange karakter som der max må vær på en linie i tabellen og så sætte <br> ind i strengen som give en ny linie i HTML delen...
Avatar billede eagleeye Praktikant
01. september 2002 - 17:35 #6
Jeg har engang lavet denne function som satte <br> ind ved max X antal tegn pr linie og den satte også <br> ind i ord hvis de er for lange så man får max X antal tegn pr linie:



inputStr = "Hej max dhdhdhdhdhdhdhdhdhdhdhdhdhdhhdhddhdh tegn pr linie testadf!<br> dfaskal asfasfdse bodasfasdrt fra br. Tester lige en gang!<br>1.punkt!<br>2.punkt!<br>!<br>virker det ?? det håber dfa asdfasdf adsf ads asdf 12345678901234567890123456 asdf asdf asdjeg da deadt gør.<br>"
Response.write "<br>inputStr:" & inputStr & "<br>"

ConstmaxCharPrLine = 20
charPrLine = 0 'Counter
i = 1 'Counter
outStr = ""
inputStr = replace (inputStr,"<br>", vbCrLf)
do while len(inputStr) > 0
  if len(inputStr)>maxCharPrLine then
    maxCharPrLine = ConstmaxCharPrLine
  else
    maxCharPrLine = len(inputStr)
  end if
  indexBR = inStr(1,inputStr, Chr(10)) 'Tjek for return
  if indexBR = 0 then 'ingen return
      indexMM = inStrRev(inputStr," ",maxCharPrLine)
      if indexMM = 0 then 'Tjek om der ingen mellemrum er i ordet
        indexMM = maxCharPrLine
        outStr = outStr & Left(inputStr,maxCharPrLine)
        if (len(inputStr) > maxCharPrLine) then
          outStr = outStr & "-" & vbCrLf
        end if
      else
        outStr = outStr & Left(inputStr,indexMM) & vbCrLf       
      end if
      indexBR = indexMM
  else
    if indexBR > maxCharPrLine then 'tjek om der er flere tegn end tilladt
      indexMM = inStrRev(inputStr," ",maxCharPrLine)
      if indexMM = 0 then 'Tjek om der ingen mellemrum er i ordet
        indexMM = maxCharPrLine
        outStr = outStr & Left(inputStr,maxCharPrLine) & "-" & vbCrLf
      else
        outStr = outStr & Left(inputStr,indexMM) & vbCrLf
      end if
      indexBR = indexMM
    else
      outStr = outStr & left(inputStr,indexBR)
    end if
  end if
  inputStr = mid(inputStr,indexBR+1)
  i = i + 1
  if i = 50 then inputStr = ""
loop
outStr = replace (outStr, vbCrLf, "<br>")


Response.Write  outStr
Avatar billede jepper15 Nybegynder
01. september 2002 - 18:23 #7
Det er sgu smukt! Jeg har ikke kopierer dig direkte (alt for let *G*), men blot luret det af! Men siger mange tak, hvis du vil have points skal du lige svare igen, jeg afviste jo før ...!
Avatar billede eagleeye Praktikant
01. september 2002 - 18:43 #8
Ok. :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester