Avatar billede traxis Nybegynder
18. september 2005 - 18:15 Der er 3 kommentarer

Smileys i textarea

Hvordan kan jeg gøre så jeg kan tilføje smileys i et textarea ved blot at trykke på den enkelte smiley?

Her er formlen:

<form method="post" action="index.php?page=tagwall">

<input type='text' name='name' value='Navn' onfocus="if(this.value=='Navn')this.value='';" onblur="if(this.value=='')this.value='Navn';" size='22'>

<br />
<input type='text' name='email' value='E-mail' onfocus="if(this.value=='E-mail')this.value='';" onblur="if(this.value=='')this.value='E-mail';" size='22'>

<br />
[HER SKULLE DER SÅ VÆRE NOGLE SMÅ SMILEYS SOM MAN SKAL KUNNE TILFØJE I TEKSTEN VED AT TRYKKE PÅ DEM]

<br />
<textarea cols='50' rows='10' name='text'></textarea><br />
<input type='button' onclick="submit();" name='send' value='Send :D'></form>
Avatar billede coderdk Praktikant
18. september 2005 - 18:20 #1
Noget i stil med:

<textarea id="txta" name="texta"></texta>
<a href="#" onclick="return indsaetSmily()">Smily</a>
<script type="text/javascript">
  function indsaetSmily()
  {
      txta = document.getElementById('txta').value;
      txta = txta + '<img src="smily.gif" alt="smily">';
      document.getElementById('txta').value = txta;
      document.getElementById('txta').focus();
      return false;
  }
</script>
Avatar billede traxis Nybegynder
18. september 2005 - 18:49 #2
Det skal være selve smileyen man trykker på.
Avatar billede gf Nybegynder
18. september 2005 - 19:20 #3
Hej

spørgsmålet hører egentligt til i js kategorien.

Jeg har fundet dette her på E og anvender det i min gæstebog. dette lille script indsætter f. eks :) i textboxen i selve gæstenogen lan du så laver en lille parser der udskifter :) => billed.

tilpas formnavn.textarea navn

mvh gf

  <script type="text/javascript">
function strInsert(input_str,insert_str,insert_position) {
        return input_str.substring(0,insert_position)+insert_str+input_str.substr(insert_position);
}
var fokus = false;
    var cursorpos;
    function insertSmiley(frmElm,smiley) {
        if (frmElm.selectionEnd != undefined) {cursorpos=frmElm.selectionEnd+smiley.length;frmElm.value = strInsert(frmElm.value,smiley,frmElm.selectionEnd);}
        else if (document.selection && fokus) {r = document.selection.createRange();r.text = smiley;}
        else if (document.selection == undefined) frmElm.value += smiley;
        else;
    }
    function mozPlaceCursor(frmElm) {
        if (frmElm.selectionEnd != undefined && cursorpos != undefined) {
            frmElm.setSelectionRange(cursorpos,cursorpos);
        }
    }
</script>

<img src='smileys/smile.gif'/ onMouseDown="insertSmiley(document.form1.felt,':)');" onMouseUp="document.form1.felt.focus();mozPlaceCursor(document.form1.felt);" />
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