Text in eine Textarea einfügen
Never_Born
- javascript
0 Ole0 Never_Born0 Ole0 Never_Born0 peppy0 Never_Born0 Ole
0 lulu
Salü zusammen!
Wie füge ich einen Text an einer bestimmten Position (da wo der Cursor ist) in eine Textarea ein?
Vielen im Voraus
Never_Born
hi
tippen? ;)
nunmal im ernst...was hast du vor? und wie?
ein paar mehr infos zum drumherrum wären schon nicht schlecht
ole
(8-)>
Hallo
Also: Ich hab da eine Textarea und einen Link, der eine Javascript-Funktion aufruft. Diese soll dann einen Text in die Textarea einfügen. Und zwar eben da wo der Cursor steht.
Gruss
Never_Born
nochmal hi
ein kleiner javascript tip:
mit form.name.value kannst du den wert deiner textarea ansprechen, wobei name der name der textarea sein sollte.
also, warum nicht erst auslesen, dann den text dranhängen und wieder reinschreiben?
alles liebe
ole
(8-)>
Ganz einfach darum, weil ich ihn dann nur ans Ende oder an den Anfang hängen kann, und nicht da wo ich will (eben wo der Cursor ist)!
Ganz einfach darum, weil ich ihn dann nur ans Ende oder an den Anfang hängen kann, und nicht da wo ich will (eben wo der Cursor ist)!
ich verstehe immer noch nicht ganz, was du vor hast.
wenn jemand in dieses textfeld schriebt, dann ändert er doch nicht noch die position des cursors und setzt ihn irgendwo mitten in den text, bevor er dann den link klickt, oder?
Wenn der Text im Feld von einer Datenbank ausgelesen wird und der Benutzer diesen ändern kann schon.
nochmals hi
das sind informationen von denen wir vorher natürlich ncihts wissen konnten.
wie wärs wenn du uns die restlichen informationen auch noch zukommen läßt, damit wir mal einen kleinen überblick bekommen?
ole
(8-)>
Salü
Mehr Informationen brauchst du doch gar nicht. lulu hats auch geschafft :-)
Dieser Beitrag wird aber wohl eh niemand mehr lesen.... tja
Wunderschöne Grüsse
Never_Born
Huhu Ungeborener
anbei ein CodeSchnipsel, die Quelle hab ich gerade nicht parat.
Funktioniert allerdings nur im IE.
Viele Grüße
lulu
<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 NAME="aForm">
<TEXTAREA NAME="aTextArea" ROWS="5" COLS="80" WRAP="soft"
ONSELECT="storeCaret(this);"
ONCLICK="storeCaret(this);"
ONKEYUP="storeCaret(this);"
>
Kibology for all.
All for Kibology.
</TEXTAREA>
<BR>
<INPUT TYPE="text" NAME="aText" SIZE="80" VALUE="Scriptology">
<BR>
<INPUT TYPE="button" VALUE="insert at caret"
ONCLICK="insertAtCaret(this.form.aTextArea,
this.form.aText.value);"
>
</FORM>
</BODY>
</HTML>
Vielen vielen Dank!!! Eine(r) der/die es verstanden hat :)
Das funktioniert ja wunderprächtig. Dürfte ich auch um eine Erklärung bitten?
Schöne Grüsse
Never_Born