Avatar billede bluwduch Nybegynder
06. juni 2002 - 13:32 Der er 19 kommentarer og
2 løsninger

Formattere strenge til nyheder med fast højde!!!

Hejsa

Jeg har 3 headere til nogle artikler, som skal vises i et lille iframe. Disse kan være korte og fylde 1 linie, eller lange og så fylder 2 linier (Jeg har ikke så meget bredde at tage af, så de skal dele sig hvis lange, og hvis for lange afskæres og afsluttes med "...").
Problemet er at disse 3 headere uanset længde altid skal ha' samme højde, dvs. når de nu er i tabeller, så skal der altid sammenlagt være lige mange rækker eksempelvis 6 - Ellers vil iframet jo ikke passe. som er kritisk!. Nogen der har en fix metode el.lign til at løse dette problem?.

(Noget andet en et iframe der kan bruges til at linke til dynamisk indhold på en hjemmeside, som selv stiller sig efter det dynamiske indholds størrelse måske?)
Avatar billede medions Nybegynder
06. juni 2002 - 13:36 #1
<%
  If Len(streng) > 30 Then
    Response.Write(Left(streng,30) & "..."
  Else
    Response.Write(streng)
  End If
%>

//>Rune
Avatar billede bluwduch Nybegynder
06. juni 2002 - 13:51 #2
Den mulighed har jeg selv været igennem - Problemet er jo, at man aldrig kan vide hvornår første linie brydes - Det er jo alt afhængigt af ordenes længde. Eksempelvis : Er det ord som "En slap brændevinsordinærmarkisehank bla bla", så vil der måske kun stå "En slap" på øverste linie, og resten smidt ned på anden linie!.
Avatar billede medions Nybegynder
06. juni 2002 - 14:00 #3
<%
  If Len(streng) > 30 Then
    strConvert = Replace(streng, "<br>" & "")
    Response.Write(Left(strConvert,30) & "..."
  Else
    strConvert = Replace(streng, "<br>" & "")
    Response.Write(streng)
  End If
%>

//>Rune
Avatar billede medions Nybegynder
06. juni 2002 - 14:02 #4
Eller sådan her:
<%
  If Len(streng) > 30 Then
    strConvert = Replace(streng, vbCrLf & " ")
    Response.Write(Left(strConvert,30) & "..."
  Else
    strConvert = Replace(streng, vbCrLf & " ")
    Response.Write(streng)
  End If
%>

//>Rune
Avatar billede tmceu Praktikant
06. juni 2002 - 14:10 #5
Du kunne erstatte din IFRAME af en include, der genererer indholdet til dig.

Eks. <!-- #Include File="nyheder.asp" -->

nyheder.asp er den side, der dynamisk opbygger nyhedslisten
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:19 #6
Jeg kan ikke rigtigt få dem til at virke - Du laver noget med Replace der ikke rigtigt virker... Der mangler også nogle slutparanteser.

Men det ser ikke ud til det løser problemet hvis alle headere er korte - Så vil højden givetvis være mindre da der ikke er nogle linieskift, end hvis det var 3 lange headere. Det skulle jo stadig gerne se fornuftigt ud :-D.
Avatar billede medions Nybegynder
06. juni 2002 - 14:22 #7
<%
StringLength = 5 
If Len(streng) > StringLength Then
    strConvert = Replace(streng, vbCrLf & " ")
    Response.Write(Left(strConvert,StringLength ) & "...")
  Else
    strConvert = Replace(streng, vbCrLf & " ")
    Response.Write(streng)
  End If
%>

//>Rune
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:24 #8
Include inkludere jo det dynamiske indhold inden det er genereret. Jeg skal jo ha' IFRAME't på en hel anden server. Ret mig endelig hvis jeg tager fejl - Kunne ihvertfald ikke få det til at virke med include...
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:28 #9
Stadig noget galt med Replace :

Wrong number of arguments or invalid property assignment: 'replace'
Avatar billede tmceu Praktikant
06. juni 2002 - 14:28 #10
Du tager (måske) fejl. Koden i includes eksekveres inden de indsættes i det dokument de includes i. Grunden til at jeg skriver måske er, at du forvirrer mig med din bemærkning om "en hel anden server". Hvad er den nuværende SRC på din IFRAME ?
Avatar billede tmceu Praktikant
06. juni 2002 - 14:30 #11
Der mangler en "replace med" i denne:

Replace(streng, vbCrLf & " ")

eks.

Replace(streng, vbCrLf, "XXX")
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:32 #12
OK. Selve nyhederne ligger på en server et sted på nettet. Det indhold nyheder.asp genererer skal ind på en hjemmeside et helt andet sted - Eksempelvis denne her!!!.

Så SRC på IFRAME't er jo ikke lokalt, men på internettet!.
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:33 #13
Med denne her, menes eksperten.dk, men det kunne være enhver anden side...
Avatar billede tmceu Praktikant
06. juni 2002 - 14:35 #14
Bruger du AspHTTP el.lign. til at hente inputtet ?

Ellers vil du jo have en smule svært ved at kontrollere indholdet. Altså hvis den eneste sammenhæng mellem indholdet i IFRAME'n og din ASP side er, at du har angivet adressen i din IFRAME SRC, kan du lave alle de replace og hvad ved jeg du vil, for indholdet loades først i browseren. Eller måske har jeg bare totalt misforstået ?
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:37 #15
Det er sådan det er! - IFRAME't har kun adressen på ASP'en - Derfor det er lidt tricky. Derfor efterlyste jeg også en anden metode til at løse problemet, da jeg pt. kun kender IFRAME.

Er der andre løsninger der gør, at brugeren af nyheder.asp kan gøre så hans side ikke formes efter de faste normer på et IFRAME, men istedet er fleksibel, så alt denne indholdsformattering slet ikke er nødvendig?.
Avatar billede tmceu Praktikant
06. juni 2002 - 14:40 #16
Så har du 0 kontrol over det eksterne indhold på din ASP side. Den ser slet ikke indholdet, det loades i browseren, når den møder IFRAME'n.

Hvis du vil gøre noget som helst ved indholdet, skal du først have det omkring din server, eks. med AspHttp: http://www.serverobjects.com/products.htm#asphttp
Avatar billede bluwduch Nybegynder
06. juni 2002 - 14:53 #17
Det ser ud til det kan gøre hvad jeg ønsker - Desværre koster det spir :-(.

Men det ser åbenbart lidt tyndt ud med selve formatteringen af de headere til brug i et IFRAME medmindre man bare beslutter at hver header skal have en fast højde på en eller 2 rækker....
Avatar billede tmceu Praktikant
06. juni 2002 - 15:10 #18
Avatar billede bluwduch Nybegynder
06. juni 2002 - 15:25 #19
Jeg vil kigge nærmere på linksne - Indtil videre er det bare løst med at lave en fast højde på 2 rækker, og så ellers formattere hvis strengen er længere end dette - Det virker vel midlertidigt :-D.

Thanks a bunch!
Avatar billede tmceu Praktikant
06. juni 2002 - 15:27 #20
:-)
Avatar billede medions Nybegynder
06. juni 2002 - 15:31 #21
Thx 4 Poinz
//>Rune
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
Kategori
Kurser inden for grundlæggende programmering

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