small-step: Problem mit onkeypress

Hallo alle,

das Problem:
Ich habe eine mit Ajax und Spucke erweiterte Textbox in einem Formular. Bei Eingabe von Text wird eine Liste von Vorschlägen aufgeklappt, mit den Cursortasten kann man einen dieser Vorschläge selektieren und mit Enter übernehmen. Geht auch ganz gut; eigentlich. In einem von einem JS-Validator überwachten Formular wird bei der Übernahme mit Enter allerdings das Formular abgeschickt. Den Validator kann ich leider nicht anpassen, der kommt von ASP.Net.

Mein Ansatz:
Ich wollte mit onkeypress den event abfangen und mit return false unterbrechen. Erweitere ich jetzt also die Textbox mit 'onkeypress="return false"', funktioniert es. Kein Abschicken des Formulars mehr. Allerdings auch nichts anderes mehr, ich kann natürlich keinen Text mehr eingeben.

Wenn ich jetzt eine Funktion dazwischenschalte, die nur false zurückgibt wenn es sich wirklich um die Taste 'Enter' handelt erkennt er den Event zwar richtig, aber return false scheint keine Auswirkung zu haben.

Hier die Funktion:
function fetchKeyEventSelectControl(elementID) {
 if(window.event.keyCode == 9) // Tab
  return false;
 if(window.event.keyCode == 13) { // Enter
  if(oSelectControlObject == null) {
   oSelectControlObject = new AjaxSelectControl(elementID);
  }
  oSelectControlObject.SelectActiveSuggestion();
  return false;
 }
}

Kann mir jemand auf die Sprünge helfen wie ich den Event wirksam und selektiv killen kann?

Danke und Gruß,
small-step

  1. Hat sich erledigt...

    ich hatte die winzige Kleinigkeit "return" bei onkeypress vergessen.

    'onkeypress="return funktion()"' erfüllt seinen Dienst.

    Gruß,
    small-step