Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
Javascript - aggiunta di un testo ad una textarea nella posizione corrente del cursore
Forum - Javascript - aggiunta di un testo ad una textarea nella posizione corrente del cursore

Avatar
mikko (Normal User)
Newbie


Messaggi: 7
Iscritto: 27/09/2009

Segnala al moderatore
Postato alle 22:14
Venerdì, 06/05/2011
Salve, avrei bisogno di un aiuto per quanto riguarda l'aggiunta di un testo in una textarea nella posizione corrente del cursore lampeggiante utilizzando dei link, posto il codice per farvi vedere cosa sono riuscito a fare :

<script type="text/javascript" language="javascript">
function aggiungi_immagine(obj_id,tag){
document.getElementById(obj_id).value +=  '<img src="'+tag + prompt('Inserisci link immagine') + '">';}
</script>


<a onclick="aggiungi_immagine('whats-new','')" title="Aggiungi immagine da link">Inserisci</a>

Questo codice richiama un prompt dove inserire il link dell'immagine e successivamente premendo il pulsante ok della finestra di dialogo viene aggiunto il codice html con il link inserito all'interno della textarea che in questo caso ha il nome di whats-new, purtroppo però il codice viene inserito in coda al testo già presente nella text area e questo è dovuto al codice "value +=" e vorrei sapere a questo punto come fare per inserire il codice nel punto esatto dove si trova il cursore di scrittura ?

Vi ringrazio in anticipo e aspetto con ansia il vostro aiuto!!! :)

Ultima modifica effettuata da mikko il 06/05/2011 alle 22:19
PM Quote
Avatar
a_butta (Member)
Expert


Messaggi: 578
Iscritto: 16/03/2010

Segnala al moderatore
Postato alle 23:27
Venerdì, 06/05/2011
Beh basta che prendi ad esempio i codici che utilizza pierotofy ogni volta che tu scrivi un thread o una risposta. Usa una funzione addslashes('codice'). Esattamente:
Codice sorgente - presumibilmente Delphi

  1. <html>
  2. <head>
  3.   ...
  4. </head>
  5. ...
  6. <script type="text/javascript" language='javascript'>
  7. function addsmile(word) {
  8.   field = document.getElementById('message');
  9.   if (document.selection) {
  10.     field.focus();
  11.     var sel = document.selection.createRange();
  12.     sel.text = word;
  13.     sel.select();
  14.   } else if (field.selectionStart || field.selectionStart == '0') {
  15.     var start = field.selectionStart;
  16.     var end = field.selectionEnd;
  17.     var scroll = field.scrollTop;
  18.     field.value = field.value.substring(0, start) + word + field.value.substring(end, field.value.length);
  19.     field.focus();
  20.     field.selectionStart = start + word.length;
  21.     field.selectionEnd = start + word.length;
  22.     field.scrollTop = scroll;
  23.   } else {
  24.     field.value += word;
  25.     field.focus();
  26.   }
  27. }
  28. </script>


Adattala a quello che ti serve e hai finito :)

Ultima modifica effettuata da a_butta il 06/05/2011 alle 23:28


PM Quote
Avatar
Mte90 (Member)
Guru


Messaggi: 1144
Iscritto: 25/03/2008

Segnala al moderatore
Postato alle 23:27
Venerdì, 06/05/2011


http://www.mte90.net/
Kde, Debian e Programmazione web/Desktop!


Linux Counter.li #482442
PM Quote
Avatar
mikko (Normal User)
Newbie


Messaggi: 7
Iscritto: 27/09/2009

Segnala al moderatore
Postato alle 23:30
Venerdì, 06/05/2011
grazie della risposta ragazzi :) vedrò come adattare il tutto con il mio codice, grazie ancora!

PM Quote
Avatar
mikko (Normal User)
Newbie


Messaggi: 7
Iscritto: 27/09/2009

Segnala al moderatore
Postato alle 23:43
Venerdì, 06/05/2011
ho risolto grazie al primo esempio di a_butta, grazie anche a te,Mte90, siete stati entrambi gentilissimi!

PM Quote