online 1
gast (50)

/ Forum / Skripte(PHP,ASP,Perl...)

Skripte(PHP,ASP,Perl...)Skripte(PHP,ASP,Perl...)

Fragevon Frank37 vom 23.10.2020, 10:23 Options

JSt: Zeichen einfügen im aktuellen Eingabefeld (Fokus) an der aktuellen Stelle

JavaScript: Zeichen einfügen im aktuellen Eingabefeld (Fokus) an der aktuellen Stelle


Hi,

mein Script soll an in dem aktuellen Feld (das Eingabefeld, das den Fokus hat) an der aktuellen Stelle (dort, wo der Cursor steht) Zeichen einfügen.

Wenn ich jetzt die Auflistung aller Elemente der Form hab,

- wie bekomme ich heraus, welches den Fokus hat
- wie bekomme ich heraus, wo der Cursor steht

(oder alternativ: kann ich einfach dem Dokument die Zeichen senden, so, dass es wie eine Tastatureingabe interpretiert wird?)

Beispiel:
Ein Formular hat 3 Input-Felder. Es ist nicht bekannt, welches der 3 Felder den Focus hat und wo der Cursor steht. Das Scipt soll an der aktuellen Position den Autotext (z.B. Firmennamen) einfügen.

So sieht meine Spielerei bisher aus:


function InsertAutoText() {
  var topwin;	// as window
  var frames;	// as window
  var frame;	// as window
  var doc;	// as HTMLDocument
  var forms;	// as HTMLCollection
  var form;	// as HTMLFormElement
  var elements;	// as HTMLCollection
  var element;  // as HTMLElement 
  var loc;	// as string
  var len;	// as int
  var i;	// as int
  var e;
  try {
    topwin= top;		// das Haupt-Dokument (enthält Frames)
    frames = topwin.frames;	// alle Frames des Haupt-Dokuments
    frame = frames[0];		// der 1. Frame
    loc = frame.location;	// URL des 1. Frames
    doc = frame.document;	// der 1. Frame als Dokument
    forms = doc.forms;		// die Forms der Seite (normalerweise nur 1)
    form = forms[0];		// das Formular
    elements = form.elements;	// die Elemente des Formulars
    len = elements.length;	// Anzahl der Elemente
    for (i=0; i<len; i++) {	// über alle Elemente des Formulars
      element = elements[i];	// ein einzelnes Element
      alert("Element " + i + ": ID= " + element.id + " Class=" + element.className);
    }
  } catch (e) {
    alert ('Error: ' + e);
  }
}


Ciao
Frank


Antwort schreiben

Antwort 1 von katy vom 23.10.2020, 17:20 Options

Hallo Frank,

wenn du folgendes machst:

<input type="text" onfocus="alert(this.id)" id="IDdiesenInputs">


erhältst du jedesmal, wenn irgendwie der Focus/cursor in diesem Feld ist eine entsprechende Meldung. Du kannst natürlich auch andere Funktionen aufrufen (onfocus="tuirgendwas()).

Dein Durchgehangel und Abfragen ist meines Erachtens damit unnötig, denn das input-feld sagt selbst Bescheid wenn es dran ist.

katy

Ähnliche Themen

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Thu Jan 8 21:07:44 2026