|  | 		    
					
        
         
          
         
	
          | |  | Ændre et linjeskift, vbcrlf, til et tag, <~ Fra : Christian Kragh
 | 
 Dato :  23-07-08 21:50
 | 
 |  | 
 
            Hej.
 Jeg har en funktion der validere noget data, og sender det med
 ajax til min server.
 Koden:
 <script type="text/javascript">
 function validering()
   {
   error = 0;
   if((document.forms[0].Titelnavn.value=='') && (error==0))
   {
     alert('Du skal skrive en titel!');
     document.forms[0].Titelnavn.focus();
     error = 1;
   }
   if((document.forms[0].textareanavn.value=='') && (error==0))
   {
     alert('Du skal skrive en udvidelse!');
     document.forms[0].textareanavn.focus();
     error = 1;
   }
   if(error == 0)
 javascript:$("#content").load("http://localhost/TodoList/blog.asp ?&indhold=" + document.forms[0].textareanavn.value);
   }
 // Slut -->
 </script>
 Findes der en funktion i Javasctipt, ligesom replace i ASP, der
 kan erstatte et linjeskift i en tekststreng med det man nu
 ønsker.
 Jeg ville i ASP gøre følgende:
 replace(streng, vbcrlf, "<br>")
 Det tager strengen "streng" og erstatter alle linjeskift, vbcrlf,
 med et tag, <br>.
 Der må findes noget lignende, men kan ikke lure hvad.
 Christian
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
  Philip Nunnegaard (24-07-2008) 
 
	
          | |  | Kommentar Fra : Philip Nunnegaard
 | 
 Dato :  24-07-08 06:08
 | 
 |  | 
 
            "Christian Kragh" <tursoe@gmail.com> skrev
 > Jeg ville i ASP gøre følgende:
 >
 > replace(streng, vbcrlf, "<br>")
 Og i javascript gør man sådan:
 document.forms[0].textareanavn.value.replace("gammel_værdi","ny_værdi")
 Altså: variabel.replace("før","nu")
 Javascript-koden for linjeskift kender jeg ikke, men jeg gætter på at det er 
 \n ligesom i php. (n som i "Newline").
 Måske dette her kan hjælpe dig videre:
http://e-tidsskrift.dk/dev/tegntabel.html#blanktegn Ovenstående vil give:
 document.forms[0].textareanavn.value.replace("\n","<br>")
            
             |  |  | 
  Stig Johansen (24-07-2008) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  24-07-08 06:33
 | 
 |  | Philip Nunnegaard wrote:
 
 > Javascript-koden for linjeskift kender jeg ikke, men jeg gætter på at det
 > er \n ligesom i php. (n som i "Newline").
 
 Nu  erdet lidt svært at finde ud af hvad Christian vil, han snaker om at
 'sende data', men bruger load ?
 Han loader et .asp script, så det vil nok være lettest at lave det
 serverside i ASP.
 Men hvis han mener 'sende' fra et textarea, så benytter FF2 '\n' mens IE6
 benytter '\r\n'.
 Det vil nok virker med en replace af '\n' alene, men jeg er sådan en der
 ikke vil have eks. '\r<br>' i hverkan database eller html, så jeg tester på
 begge dele.
 
 --
 Med venlig hilsen
 Stig Johansen
 
 
 |  |  | 
   Christian Kragh (24-07-2008) 
 
	
          | |  | Kommentar Fra : Christian Kragh
 | 
 Dato :  24-07-08 19:46
 | 
 |  | 
 
            > > Javascript-koden for linjeskift kender jeg ikke, men jeg gætter på at det 
 > > er \n ligesom i php. (n som i "Newline"). 
 >  
 > Nu  erdet lidt svært at finde ud af hvad Christian vil, han snaker om at 
 > 'sende data', men bruger load ? 
 > Han loader et .asp script, så det vil nok være lettest at lave det 
 > serverside i ASP. 
 > Men hvis han mener 'sende' fra et textarea, så benytter FF2 '\n' mens IE6 
 > benytter '\r\n'. 
 > Det vil nok virker med en replace af '\n' alene, men jeg er sådan en der 
 > ikke vil have eks. '\r<br>' i hverkan database eller html, så jeg tester på 
 > begge dele.
 Det jeg har / vil er at sende indholdet af et tekstfelt til min server, ved
 hjælp af ajax, og der sætte det ind i en database.
 I tekstfeltet skal de linjeskift der skrives ved hjælp af enter knappen ændres
 til en <br> som sendes til serveren i koden.
 På serveren ændres tekstfeltet så tilbage med replace funktionen i ASP således
 at der kommer et linjeskift i databasen. Altså et vbcrlf.
 Derfor er Philip Nunnegaards metode præcis det jeg skal bruge, jeg har fundet
 ud af at denne virker...
   if(error == 0)
 javascript:$("#content").load("http://localhost/TodoList/blog.asp?create=yes&u dvidelse=" + document.forms[0].textareanavn.value.replace(/\r\n/g,"<br>\r\n")
 + "&titel=" + document.forms[0].Titelnavn.value + "&id=" +
 document.forms[0].ridnavn.value);
   }
 Således at alle linjeskift, der kan forekommer flere gange, ændres til <br>.
 Derfor bruger jeg nu:
 document.forms[0].textareanavn.value.replace(/\r\n/g,"<br>\r\n")
 / før \r\n og igen /g efterfølgende, for at finde alle.
 Derfor tak for hjælpen til både den ene og den anden...
 metoden med \n i firefox fanges alligevel selvom der står \r\n, men der skal
 \r foran ellers virker det ikke i IE7.
 Christian
 -- 
 Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
  - Pædagogiske tutorials på dansk
  - Kom godt i gang med koderne
 KLIK HER! => http://www.html.dk/tutorials |  |  | 
    Philip Nunnegaard (24-07-2008) 
 
	
          | |  | Kommentar Fra : Philip Nunnegaard
 | 
 Dato :  24-07-08 19:54
 | 
 |  | Christian Kragh wrote:
 
 > Det jeg har / vil er at sende indholdet af et tekstfelt til min
 > server, ved hjælp af ajax, og der sætte det ind i en database.
 
 Jeg gættede mig netop frem til at du brugte AJAX, måske fordi jeg selv leger
 med det for tiden og måske også en dag ryger ind i problemet hvis jeg en dag
 skal sende længere tekster med linjeskift ind over.
 
 > Derfor tak for hjælpen til både den ene og den anden...
 >
 > metoden med \n i firefox fanges alligevel selvom der står \r\n, men
 > der skal \r foran ellers virker det ikke i IE7.
 
 Selv tak. Nu blev jeg også klogere.
 
 
 
 |  |  | 
     Stig Johansen (24-07-2008) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  24-07-08 21:45
 | 
 |  | "Philip Nunnegaard" <nunnenospam@hitsurf.dk> wrote in message
 news:4888cfc1$0$56784$edfadb0f@dtext02.news.tele.dk...
 > Christian Kragh wrote:
 >
 > > Det jeg har / vil er at sende indholdet af et tekstfelt til min
 > > server, ved hjælp af ajax, og der sætte det ind i en database.
 >
 > Jeg gættede mig netop frem til at du brugte AJAX, måske fordi jeg selv
 leger
 > med det for tiden og måske også en dag ryger ind i problemet hvis jeg en
 dag
 > skal sende længere tekster med linjeskift ind over.
 
 He - han skrev også Ajax. Min kommentar var en stikpille om at det er yderst
 ulogisk at benytte en funktion, der hedder 'load' til at 'sende med'.
 Det er ikke ligefrem den slags ting, der gør koder let læselige/forståelige
 mht. vedligeholdelse.
 
 >
 > > Derfor tak for hjælpen til både den ene og den anden...
 > >
 > > metoden med \n i firefox fanges alligevel selvom der står \r\n, men
 > > der skal \r foran ellers virker det ikke i IE7.
 
 Christian:
 Men det du skriver er at gå over åen med mel i munden....
 Jeg bruger det her i ASP:
 if InStr(MessageBody,vbCrLf) < 1 then MessageBody =
 Replace(MessageBody,chr(10),vbCrLf)
 
 Også med Ajax, og det virker i alle mine browsere samt korrekte linieskift i
 Access/MS SQLserver m.m.
 
 Hvorfor vil du skifte lf -> <br> -> crlf ?
 
 --
 Med venlig hilsen/Best regards
 Stig Johansen
 
 
 
 
 
 |  |  | 
      Birger (25-07-2008) 
 
	
          | |  | Kommentar Fra : Birger
 | 
 Dato :  25-07-08 00:45
 | 
 |  | 
 
            "Stig Johansen" <wopr.dk@gmail.com> skrev i en meddelelse 
 news:4888e96c$0$90272$14726298@news.sunsite.dk...
 > "Philip Nunnegaard" <nunnenospam@hitsurf.dk> wrote in message
 > news:4888cfc1$0$56784$edfadb0f@dtext02.news.tele.dk...
 >> Christian Kragh wrote:
 >>
 >> > Det jeg har / vil er at sende indholdet af et tekstfelt til min
 >> > server, ved hjælp af ajax, og der sætte det ind i en database.
 >>
 >> Jeg gættede mig netop frem til at du brugte AJAX, måske fordi jeg selv
 > leger
 >> med det for tiden og måske også en dag ryger ind i problemet hvis jeg en
 > dag
 >> skal sende længere tekster med linjeskift ind over.
 >
 > He - han skrev også Ajax. Min kommentar var en stikpille om at det er 
 > yderst
 > ulogisk at benytte en funktion, der hedder 'load' til at 'sende med'.
 > Det er ikke ligefrem den slags ting, der gør koder let 
 > læselige/forståelige
 > mht. vedligeholdelse.
 >
 >>
 >> > Derfor tak for hjælpen til både den ene og den anden...
 >> >
 >> > metoden med \n i firefox fanges alligevel selvom der står \r\n, men
 >> > der skal \r foran ellers virker det ikke i IE7.
 >
 > Christian:
 > Men det du skriver er at gå over åen med mel i munden....
 > Jeg bruger det her i ASP:
 >            if InStr(MessageBody,vbCrLf) < 1 then MessageBody =
 > Replace(MessageBody,chr(10),vbCrLf)
 >
 > Også med Ajax, og det virker i alle mine browsere samt korrekte linieskift 
 > i
 > Access/MS SQLserver m.m.
 >
 > Hvorfor vil du skifte lf -> <br> -> crlf ?
 >
 Tror de glemmer at encode teksten rigtigt.
 Brug encodeURIComponent( 'var=text') som data - hvadenten der bruges GET 
 eller POST i AJAX.
 Hvis man vil have CR i sin database, skal man så blot fjerne LF'er. ( + 
 huske at checke for tags, kode etc...) Og det gøres IMHO lettest serverside.
 Birger
 -----
http://bbsorensen.dk
http://varmeretter.dk  - hverdagsmad. Sundt, nemt, hurtigt og billigt. Daglig 
 opdatering. 
            
             |  |  | 
       Stig Johansen (25-07-2008) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  25-07-08 06:06
 | 
 |  | Birger wrote:
 
 > Tror de glemmer at encode teksten rigtigt.
 > Brug encodeURIComponent( 'var=text') som data - hvadenten der bruges GET
 > eller POST i AJAX.
 
 Det synes jeg er godt set - det er dømt til at gå i kage uden encoding.
 Der kan muligvis også opstå noget med æøå m.m. afhængig af hvordan miljøet
 er sat op.
 
 > Hvis man vil have CR i sin database, skal man så blot fjerne LF'er. ( +
 > huske at checke for tags, kode etc...) Og det gøres IMHO lettest
 > serverside.
 
 Det er vi enige i (serverside), men Windows benytter CRLF og ikke kun LF, så
 hvis data skal kunne bruges til brevfletning, andre systemer m.v. så er det
 bedst at konvertere enkeltstående LF (=FF) til CRLF.
 
 *Nix systemer bruger kun LF, og her er det bedst at fjerne CR (=IE) så det
 passer ind med resten af programmerne.
 
 --
 Med venlig hilsen
 Stig Johansen
 
 
 |  |  | 
        Birger (25-07-2008) 
 
	
          | |  | Kommentar Fra : Birger
 | 
 Dato :  25-07-08 10:28
 | 
 |  | 
 
            "Stig Johansen" <wopr.dk@gmaill.com> skrev i en meddelelse 
 news:48895f57$0$90267$14726298@news.sunsite.dk...
 > Birger wrote:
 >
 >> Tror de glemmer at encode teksten rigtigt.
 >> Brug encodeURIComponent( 'var=text') som data - hvadenten der bruges GET
 >> eller POST i AJAX.
 >
 > Det synes jeg er godt set - det er dømt til at gå i kage uden encoding.
 > Der kan muligvis også opstå noget med æøå m.m. afhængig af hvordan miljøet
 > er sat op.
 >
 >> Hvis man vil have CR i sin database, skal man så blot fjerne LF'er. ( +
 >> huske at checke for tags, kode etc...) Og det gøres IMHO lettest
 >> serverside.
 >
 > Det er vi enige i (serverside), men Windows benytter CRLF og ikke kun LF, 
 > så
 > hvis data skal kunne bruges til brevfletning, andre systemer m.v. så er 
 > det
 > bedst at konvertere enkeltstående LF (=FF) til CRLF.
 >
 > *Nix systemer bruger kun LF, og her er det bedst at fjerne CR (=IE) så det
 > passer ind med resten af programmerne.
 >
 Har selv haft problemet ;>)
 Tekster fra textarea har i IE LFCR mens FF og Opera kun har CR. (Har ikke 
 checket andre).
 [
 Og det gælder svjh. kun ved læsning - indsætter man tekst, f.eks. via 
 innerHTML tilpasser browserne selv til "ny linie", enten der står det ene 
 eller andet...
 ]
 Alene derfor er man altså nødt til at gøre et eller andet ved det - og sørge 
 for at det endelige resultat er som man har brug for det - hvad enten det 
 skal være den ene, den anden eller dem begge - og det må vel netop blive 
 dikteret af hvad den endelige anvendelse er..
 Jeg tror måske jeg misforstår dig.
 LF er ikke det samme som FF
http://www.asciitable.com/ FF giver ikke megen mening i et textarea i HTML, men bør vel alligevel kunne 
 stå der - også uden nødvendigvis at blive lavet om til "ny linie"?
 Birger
 -----
http://bbsorensen.dk
http://varmeretter.dk  - hverdagsmad. Sundt, nemt, hurtigt og billigt. Daglig 
 opdatering. 
            
             |  |  | 
         Stig Johansen (25-07-2008) 
 
	
          | |  | Kommentar Fra : Stig Johansen
 | 
 Dato :  25-07-08 18:16
 | 
 |  | 
 
            Birger wrote:
 > Jeg tror måske jeg misforstår dig.
 > LF er ikke det samme som FF
 Sk*de forkortelser - det var FF, og ikke FF    FF som i FireFox, og ikke som i FormFeed.
 Min FireFox sender kun LF, hvorimod IE sender CRLF.
 Da det er Windows server, replacer jeg enkeltstående LF'er med CRLF'er.
 -- 
 Med venlig hilsen
 Stig Johansen
            
             |  |  | 
          Birger (25-07-2008) 
 
	
          | |  | Kommentar Fra : Birger
 | 
 Dato :  25-07-08 22:02
 | 
 |  | 
 
            "Stig Johansen" <wopr.dk@gmaill.com> skrev i en meddelelse 
 news:488a0a85$0$90262$14726298@news.sunsite.dk...
 > Birger wrote:
 >
 >> Jeg tror måske jeg misforstår dig.
 >> LF er ikke det samme som FF
 >
 > Sk*de forkortelser - det var FF, og ikke FF    >
 > FF som i FireFox, og ikke som i FormFeed.
 >
 > Min FireFox sender kun LF, hvorimod IE sender CRLF.
 > Da det er Windows server, replacer jeg enkeltstående LF'er med CRLF'er.
 >
 >
 Jeg mener nu at FF kun sender CR..?
 Det kommer måske an på OP?
 Birger
 -----
http://bbsorensen.dk
http://varmeretter.dk  - hverdagsmad. Sundt, nemt, hurtigt og billigt. Daglig 
 opdatering. 
            
             |  |  | 
          Birger (25-07-2008) 
 
	
          | |  | Kommentar Fra : Birger
 | 
 Dato :  25-07-08 22:12
 | 
 |  | 
 
            "Stig Johansen" <wopr.dk@gmaill.com> skrev i en meddelelse 
 news:488a0a85$0$90262$14726298@news.sunsite.dk...
 > Birger wrote:
 >
 >> Jeg tror måske jeg misforstår dig.
 >> LF er ikke det samme som FF
 >
 > Sk*de forkortelser - det var FF, og ikke FF    >
 > FF som i FireFox, og ikke som i FormFeed.
 >
 > Min FireFox sender kun LF, hvorimod IE sender CRLF.
 > Da det er Windows server, replacer jeg enkeltstående LF'er med CRLF'er.
 >
 >
 LOL
 ROTFL
 Vi er helt enige ;>)
 Birger
 -----
http://bbsorensen.dk
http://varmeretter.dk  - hverdagsmad. Sundt, nemt, hurtigt og billigt. Daglig 
 opdatering. 
            
             |  |  | 
 |  |