Avatar billede mccookie Seniormester
07. august 2015 - 13:12 Der er 5 kommentarer

Javascript - Textarea - Hent value fra box

Hej,

Jeg har et textarea på 10 linjer, som min bruger til at indtaste noget data i - Det kunne se sådan ud:

START
Hej
Med
Dig
SLUT

Jeg trækker det indtast ud med getelementbyid og så videre.... når jeg er færdig med at behandle det med Javascript, sender jeg det videre (AJAX kald) til en db - Men nu er linebreak væk og alt kommer ud i en lang køre.

Hvordan kan jeg gribe det an?
Avatar billede olsensweb.dk Ekspert
07. august 2015 - 13:44 #1
hvis du kigger på det der sendes, sendes der ikke så nogle kontrol tegn ??
txt=Hej%0D%0AMed%0D%0ADig
%0D%0A = \r\n = ascii 10 og 14 => carriage return line feed
https://en.wikipedia.org/wiki/Carriage_return

hvis du skal have den vist som html skal de laves om til <br> med functionen http://php.net/manual/en/function.nl2br.php
lad endelig eksten stå i basen som den er, dvs med %0D%0A, det er en uskik at gemme html i basen
Avatar billede olsensweb.dk Ekspert
07. august 2015 - 13:46 #2
>%0D%0A = \r\n = ascii 10 og 14 =>
skrivefejl
%0D%0A = \r\n = ascii 13 og 10 =>
Avatar billede mccookie Seniormester
07. august 2015 - 13:54 #3
Hej,

Der sendes netop ikke noget.... jeg trækker det ud af boksen for at sende det via et AJAX kald.... og ville egentligt helst have det som Plaintext.
Avatar billede olsensweb.dk Ekspert
07. august 2015 - 14:13 #4
kan du ikke lave et kort eks, og komme med et link vi kan prøve ??, begræns back enden til minimum.
og gerne med et link til en zippet fil med html og php filer eller lig coden herind hvis det ikke er for stort
Avatar billede mccookie Seniormester
07. august 2015 - 22:36 #5
Problemet skyldtes at \n ikke vises, men samtidigt også forsvinder mellem Javascriptet, AJAX kaldet og PHP delen.

Derfor konvertere jeg først til <br /> og siden fjerner jeg BR tagget og erstatter med \n
Måske det kan gøres smartere - Men det virker!

Javascript delen:

var new_input = document.getElementById(field).value.replace(/\n/g, "<br />");

PHP Delen

preg_replace('/\<br(\s*)?\/?\>/i', "\n", $_REQUEST['new_input'])
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