Groups | Search | Server Info | Login | Register
Groups > de.comp.lang.javascript > #5359
| From | Stefan Reuther <stefan.news@arcor.de> |
|---|---|
| Newsgroups | de.comp.lang.javascript |
| Subject | Re: Eingabefeld wird nicht geleert |
| Date | 2023-04-12 18:55 +0200 |
| Message-ID | <u16urc.3ho.1@stefan.msgid.phost.de> (permalink) |
| References | <u165tt$1hiia$1@gwaiyur.mb-net.net> |
Am 12.04.2023 um 13:50 schrieb Jan Novak:
> ich habe in einer Form ein Eingabefeld, welches per JS eine ganze Reihe
> an autocomplete Inhalte hinzugefügt bekommen hat.
[...]
> mache. Aber das Element bleibt mit dem letzten Text aus dem autocomplete
> stehen. Zwei Dinge hierzu:
Ich würde den Fehler im Autocomplete-Code suchen, den du nicht gezeigt
hast. Unten eine Variation deines Codes, die bei mir tut wie gewünscht.
Spontane Vermutung: das Autocomplete-Element hat weiterhin den Fokus,
bekommt den 'Enter'-Tastendruck, und löst damit das Autocomplete einfach
erneut aus. Ich seh zumindest in deiner addTag-Funktion nichts, das das
Weiterpropagieren des Events stoppen würde.
Zum Debuggen sind ansonsten die alten Methoden einfach noch die besten:
alle Eventhandler verprinten (console.log) und dann siehst du in der
Konsole, was in welcher Reihenfolge kommt.
Stefan
<html>
<body>
<input id="SEARCH_TAGS" />
<button id="WHAT">Set</button>
<ul id="TAG_LIST">
</ul>
</body>
<script>
document.addEventListener('keydown', function addTag() {
var taginput=document.getElementById("SEARCH_TAGS").value;
if(event.key === 'Enter' && taginput != "") {
// tue etwas mit dem Tag
var e = document.createElement("LI");
e.appendChild(document.createTextNode(taginput));
document.getElementById("TAG_LIST").appendChild(e);
document.getElementById("SEARCH_TAGS").value = "";
}
});
document.getElementById("WHAT").addEventListener('click', function() {
var e = document.getElementById("SEARCH_TAGS");
e.value = "what";
e.focus();
});
</script>
</html>
Back to de.comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar
Eingabefeld wird nicht geleert Jan Novak <repcom@gmail.com> - 2023-04-12 13:50 +0200
Re: Eingabefeld wird nicht geleert Jan Novak <repcom@gmail.com> - 2023-04-12 14:48 +0200
Re: Eingabefeld wird nicht geleert Stefan Reuther <stefan.news@arcor.de> - 2023-04-12 18:55 +0200
Re: Eingabefeld wird nicht geleert Jan Novak <repcom@gmail.com> - 2023-04-17 15:34 +0200
csiph-web