Hur skall man "stoppa" de som har kul och t.ex. bara skriver en lång jäkla rad utan mellanslag i textfältet. Detta fördärvar ju utseendet på en gästbok. Jag har satt tabellen till width 500 men den fortsätter i sidled tills "ordet" tar slut.
Tvinga fram radbyte
13 svar · 283 visningar · startad av Bj
<TextArea WRAP="Virtual"> Kanske fungerar...
eller så kan du bara ta bort de orden som är över 30 characters långa
------------------
"Brott kanske inte lönar sig, men det är kul"
sText = "här kommer ett jääääättelångt ord"
arrText = split(sText, " ");
for i = 0 To uBound(arrText)
if Len(arrText(i)) > 50 then
newText = newText & " " & Left(arrText(i), 25)
newText = newText & " " & Right(arrText(i), Len(arrText(i))-25)
else
newText = newText & " " & arrText(i)
end if
next
Något sådant borde funka... Strängen med den formaterade texten finns nu i variabeln newText.
------------------
SPiN, bjorne.w@telia.com
--- Är det bara jag som har en britney-cursor? ---
Först en liten funktion:
<%
function fixatecken(str)
fixatecken = Replace(str, vbCrLf, "<BR>" & vbCrLf, 1, -1, 1)
End function
%>
Sedan plockar du ut informationen ur databasen eller formuläret:
<%=fixatecken(RecSet("FÄLT"))%>
alt.
<%=fixatecken(Request.Form("FÄLT"))%>
Lycka till! :)
------------------
// Palleman
www.wiicom.nu/palle
Jag får det inte att funka. Kanske ngn kan visa på medföljande kod.
<b><%=rsRubrik("titel")%></b></td>
</tr>
<tr>
<td width="100%">Inlagt av: <%=rsRubrik("namn")%></td>
</tr>
<tr>
<td width="100%"><% response.write(rsRubrik("mess"))%><br>
<a href="admin/raderarubrik.asp?ID=<%=rsRubrik("rubrikID")%>"><i>Radera Ditt inlägg</i></a></td>
</tr>
<tr>
<td width="100%"></td>
</tr>
</table>
</center>
</div>
Okey, typ nåt sånt här kanske:
<%
'### Min funktion
function doIt(textSomSkaFixas) {
arrText = split(textSomSkaFixas, " ")
for i = 0 To uBound(arrText)
if Len(arrText(i)) > 50 then
newText = newText & " " & Left(arrText(i), 25)
newText = newText & " " & Right(arrText(i), Len(arrText(i)-25)
else
newText = newText & " " & arrText(i)
end if
next
doIt = newText
end function
'### Fixa till det
%>
<b><%=rsRubrik("titel")%></b></td>
</tr>
<tr>
<td width="100%">Inlagt av: <%=rsRubrik("namn")%></td>
</tr>
<tr>
<td width="100%"><% =doIt(rsRubrik("mess"))%><br>
<a href="admin/raderarubrik.asp?ID=<%=rsRubrik("rubrikID")%>"><i>Radera Ditt inlägg</i></a></td>
</tr>
<tr>
<td width="100%"></td>
</tr>
</table>
</center>
</div>
Då fixas rsRubrik("mess") till, men inga andra poster. Lägg till doIt()-funktionen på de poster du vill göra nåt åt.
------------------
SPiN, bjorne.w@telia.com
--- Är det bara jag som har en britney-cursor? ---
[Redigerat av SPiN den 26 mar 2001]
Tack.
Men nu får jag följande fel.
Ogiltigt tecken
function doIt(textSomSkaFixas) {
-------------------------------^
Om jag tar bort det sista tecknet där blir det följande felmeddelande:
')' förväntas.
newText = newText & " " & Right(arrText(i), Len(arrText(i)-25)
--------------------------------------------------------------^
Hmmm?
Hehe ooops för mycket Java i hjärnan ;)
Ta bort { och lägg till en ) på raden du får felmeddelande :)
------------------
SPiN, bjorne.w@telia.com
--- Jag ÄR den enda med en britney-cursor! ---
Jag gjorde allt den testen innan jag skrev sist, ;)
Jag får då detta meddelande:
Programsats förväntas.
function doIt(textSomSkaFixas) )
-------------------------------^
[redigerat]Hmmm trodde jag kom på det, men det gjorde jag juh inte...
Hur som helst ska det inte vara ett ) där :)
Ta bort det genast ;)[/redigerat]
Men jag insåg just att om ett ord är längre än 75 tecken kommer ordet bara brytas efter de första 25 tecknen... Resten av ordet kommer att skrivas utan mellanslag.
Återkommer när jag löst det... Eller om nån annan kommer på någon lösning :)
------------------
SPiN, bjorne.w@telia.com
--- Jag ÄR den enda med en britney-cursor! ---
[Redigerat av SPiN den 26 mar 2001]
Din rad verkar se ut så här:
newText = newText & " " & Right(arrText(i), Len(arrText(i)-25)
När den borde se ut så här:
newText = newText & " " & Right(arrText(i), Len(arrText(i))-25)
------------------
SPiN, bjorne.w@telia.com
--- Jag ÄR den enda med en britney-cursor! ---
Jajamen Spin.
Det funkar exakt som du säger! Gör man bara som man blir tillsagd så... ;)
Jepp den bryter rader vid 25 tecken för tillfället. Men det finns ju en hel del tecken att öka på denna då tabellen är på widht 550.
Vi får se om du löser den biten också. Tack så länge.
knepigt
Jag kikade lite på den modulen...
Men om den långa raden är över 100, så bryter den ju vid 25. fast den raden som kommer blir ju 75..
den ska ju bryta den oxå!