2 Stimmen

Wie kann ich Javascript verwenden, um Text in eine Textarea einzufügen?

Ich brauche, um etwas Text in ein Textfeld an der Stelle einfügen, wo der Cursor ist, wie kann ich dies ohne Jquery tun?

1voto

Daniel Vassallo Punkte 325264

Vielleicht möchten Sie sich das kleine Codebeispiel unter ansehen:

Code aus dem oben genannten Artikel:

function insertAtCursor(myField, myValue) {

  if (document.selection) {
    myField.focus();
    sel = document.selection.createRange();
    sel.text = myValue;
  }
  else if (myField.selectionStart || myField.selectionStart == '0') {
    var startPos = myField.selectionStart;
    var endPos = myField.selectionEnd;

    myField.value = myField.value.substring(0, startPos)
                  + myValue
                  + myField.value.substring(endPos, myField.value.length);
  } else {
    myField.value += myValue;
  }
}

// calling the function
insertAtCursor(document.getElementById('textarea_id'), 'sometext');

0voto

Max Shawabkeh Punkte 36359

Verwenden Sie ein HTML title Attribut? Damit wird der Tooltip-Text neben dem Cursor platziert, wenn er sich über einem bestimmten Element befindet.

Oder Sie könnten eine <div> con position: fixed und positionieren ihn dann bei event.screenX, event.screenY :

<div id="tip" style="position: fixed; visibility: hidden;"></div>
<textarea onmousemove="position();" onmouseout="hide();"></texarea>
<script type="text/javascript">
  function position() {
    var d = document.getElementById('tip');
    d.style.visibility = 'visible';
    d.style.left = event.screenX + 'px';
    d.style.top = event.screenX + 'py';
  }
  function hide() {
    document.getElementById('tip').style.visibility = 'hidden';
  }
</script>

0voto

G-Wiz Punkte 7279

Siehe bitte diese Person Der Code aquí . Dieser Code verwendet die selection Eigenschaft der document Objekt, um die Cursorposition zu ermitteln, und erstellt dann eine neue Zeichenkette, die in das Textfeld eingefügt wird. Es hat auch eine spezialisierte Routine für IE, die viel mehr umständlich Logik für die Suche nach der Cursor-Position hat.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X