apfelsine: Select Li Element on Keyup

Beitrag lesen

@@apfelsine

  <li id="359" onclick="javascript:setAutoComplete(359, 'Achim','StartStation','SelectedStationStart')">Achim</li>

Was alle Antwortenden bislang übersehen haben (obwohl sie es besser wissen sollten): Das kann nicht funktionieren (im Sinne von: bei allen Nutzern funktionieren). li ist kein interaktives Element; das ist bei Tastatursteuerung nicht erreichbar, also nicht anclickbar.

Merke: Niemals nicht-interaktive Elemente als Target für click-Events vorsehen. Für sowas sind buttons zu verwenden.

ok. Nun habe ich mal nachgeschaut was es denn sonst noch so gibt außer Buttons.
https://wiki.selfhtml.org/wiki/HTML/Kategorien_von_Elementen#Interaktive_Elemente

Irgendwo habe ich gelesen A wäre nicht gut für onclick. Aber mal so einfach gefragt, kann man nicht auch ein Label verwenden? Meinetwegen nehme ich auch einen Button. Ich will es einfach nur wissen.

Ich habe es jetzt mal so probiert(siehe unten), aber das Event anhängen funktioniert nicht, weil das dynamische Element, das ich dem DIV "targetUI" hinzufüge nicht gefunden wird und dadurch das Objekt "myelement" leer ist:

var div = document.getElementById('targetUI');
newelement = '<li  class="selected"> <label name="' + item[0] + '" id="' + item[0] + '">' + item[1] + '</label></li>';

if (div != null) {
div.innerHTML += newelement;
                                            
var elementname = '\"' + item[0] + '\"';
var myelement= div.getElementsByTagName(elementname);
if (myelement!= null) {
    AddEvent(myelement, 'click', function () { 
        setAutoComplete(item[0], '\'' + item[1] + '\'', '\'' + parent + '\'', '\'' + idField + '\'') });
     }
 }