Avatar billede thinge Nybegynder
23. august 2002 - 10:34 Der er 12 kommentarer og
1 løsning

Gøre noget ved markeret tekst i et tekstarea

Jeg skal gøre noget ved et stykke markeret tekst i et tekstarea. For eksempel ved tryk på en knap bliver det tilføjet noget til teksten.
kan dette lade sige gøre

thinge
Avatar billede nikolajdu Nybegynder
23. august 2002 - 10:50 #1
HVis du markerer et stykke tekst, så vil et forsøg på at indsætte yderligere tekst erstatte det markerede.

/Nikolaj
Avatar billede thinge Nybegynder
23. august 2002 - 10:55 #2
kan kan vel tage det markerede stykke tekst og sætte det ind samme med det nye tekst
eller hvad??
Avatar billede skovtrold Nybegynder
23. august 2002 - 10:55 #3
Er det noget som det her du leder efter?
http://javascript.internet.com/forms/format-input.html
Tryk på Example-knappen og så indsættes der tekst.
Avatar billede nikolajdu Nybegynder
23. august 2002 - 10:55 #4
Jo det kunne man vel godt, men hvorfor så ikke bare indsætte tekst der hvor markøren står??
Avatar billede nikolajdu Nybegynder
23. august 2002 - 10:58 #5
<HTML>
    <HEAD>
    <SCRIPT>
    function storeCaret (textEl) {
      if (textEl.createTextRange)
        textEl.caretPos = document.selection.createRange().duplicate();
    }
    function insertAtCaret (textEl, text) {
      if (textEl.createTextRange && textEl.caretPos) {
        var caretPos = textEl.caretPos;
        caretPos.text =
          caretPos.text.charAt(caretPos.text.length - 1) == ' ' ?
            text + ' ' : text;
      }
      else
        textEl.value  = text;
    }
    </SCRIPT>
    </HEAD>
    <BODY>
      <form method="post" action="editor.hmtl" name="f">



    <textarea rows="2" cols="20" id="hej" onSelect="storeCaret(this);" onClick="storeCaret(this);" onKeyup="storeCaret(this);">Her er lidt tekst.</textarea>

</form>

    <a href="#" onclick="insertAtCaret(document.f.hej, 'Nikolajdu siger hej og inds&aelig;tter sig selv...')">inds&aelig;t det her du</a>
    </BODY>
    </HTML>
Avatar billede thinge Nybegynder
23. august 2002 - 11:05 #6
til skovtrold: Nej det skal kun være den markret tekst der skal ændres

Jeg er ved at lave en slags editor hvor, hvor en bruger skriver en tekst, som så bliver vist på en html side. Det kunne så være rart at brugeren kunne markere en tekst der skulle være fed eller kursiv.
Avatar billede thinge Nybegynder
23. august 2002 - 11:13 #7
Verdensklasse nikolajdu
Avatar billede nikolajdu Nybegynder
23. august 2002 - 11:50 #8
ligefrem....

Nu havde jeg det jo liggende i forvejen :))
Avatar billede Slettet bruger
23. august 2002 - 15:27 #9
Avatar billede thinge Nybegynder
07. november 2002 - 08:44 #10
Nikolajdu, gider du at svare så jeg kan give dig point
Avatar billede nikolajdu Nybegynder
07. november 2002 - 11:12 #11
oki doki :)
Avatar billede atheist Nybegynder
12. august 2003 - 23:08 #12
Hvordan siger i man tager den markerede tekst, smækker f.eks. <strong> og </strong> rundt omkring, og erstatter den markerede tekst, med den markerede tekst + <strong>-tags?
Avatar billede Slettet bruger
14. august 2003 - 17:14 #13
atheist>>

<script type="text/javascript">
harFokus = false;

function indsaet(start, slut) {
  if (harFokus) {
    rng = document.selection.createRange();
    rng.text = start + rng.text + slut;
  }
}
</script>

Og:

<textarea ... onfocus="harFokus = true;" onblur="harFokus = false;">
Her skal teksten være...</textarea>

Derefter kan du med fx en knap som nedenstående indsætte valgfrie tags om den markerede tekst:

<input value="Fed skrift" type="button" onmousedown="indsaet('<strong>', '</strong>');" />
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