Avatar billede php-nybegynderen Nybegynder
15. maj 2008 - 16:46 Der er 6 kommentarer og
1 løsning

link til at indskrive i textarea (samt linjeskift)

Hej.

Jeg mangler lige lidt inspiration til, hvordan man kan lave et link på et billede, således at når man trykke kommer der til at stå noget vilkårligt i en textarea.

F.eks. trykker man på en smiley, og så kommer der til at stå :-) i textarea.

Derudover har jeg også svært ved at finde ud af, hvordan man automatisk ved et linjeskift i textarea får det indskrevet i databasen til at der er et linjeskift (altså <br>). Hvis man derefter ønsker at redigere det man har skrevet, skal det dog ikke vises som <br>, men stadig bare som linjeskift.

Skriv endelig selvom i kun kender et af svarende!

Mvh. Mikkel
Avatar billede w13 Novice
15. maj 2008 - 17:13 #1
Hvad angår linjeskiftet, så gør de fleste det, at de erstatter \n med <br> når data skal vises. På den måde ligger <br> ikke gemt i databasen.

Og det med at indsætte tekst i textarea skal jo gøres med Javascript.

Hvis det bare skal tilføjes sidst i textareaets indhold, kan det gøres således:

<script type="text/javascript">
function insertText(s){
  var o=document.getElementById("textarea1");
  o.appendChild(document.createTextNode(s))
}
</script>

<img src="smiley1.gif" onclick="insertText(':-)')">

<textarea id="textarea1"></textarea>

Men hvis det skal sættes ind, der hvor markøren står og blinker, bliver det noget sværere. Men det skrev du jo heller ikke noget om.
Avatar billede php-nybegynderen Nybegynder
15. maj 2008 - 17:39 #2
Jeg har måske ikke formuleret det godt nok mht. linjeskift.

Når man trykker enter i textarea, skal den automatisk lave linjeskift i HTML-koden også. Hvordan får man det til at virke?

Det andet virker helt fint, tak! ;)
Avatar billede w13 Novice
15. maj 2008 - 18:02 #3
Jo, jeg er helt med. Du skal bare erstatte "\n" med "<br>", når du udskriver det fra databasen i HTML.
Avatar billede w13 Novice
15. maj 2008 - 18:14 #4
Det kan faktisk gøres med funktionen nl2br()
http://dk2.php.net/nl2br
Avatar billede php-nybegynderen Nybegynder
15. maj 2008 - 18:21 #5
Jeg forstår det simpelthen ikke :/

Det jeg laver er ca. ligesom når vi skriver herinde. Der laver man jo ikke <br> eller \n for at skifte linje, der gør den det af sig selv. Det er det jeg gerne vil, og hvis det er det nl2br() gør, så kan jeg virkelig ikke forstå det.
Avatar billede w13 Novice
15. maj 2008 - 18:40 #6
Nej, her trykker man enter for at skifte linje og det gør man vel også på din side.

Så skal du kode ind i dit system, at når du skal vise teksten igen på skærmen, dvs. når du henter den fra databasen, så skal du lige køre den igennem funktionen nl2br(), som indsætter de korrekte "<br>"-koder i stedet for tomme linjeskift.
Avatar billede php-nybegynderen Nybegynder
15. maj 2008 - 18:43 #7
Okay, fik det til at virke.. Selvom jeg ikke forstår det er så simpelt. Tak! :p
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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