Hi!
Okay, jetzt wird das Formular beim Klicken auf den Submit-Button nur dann ausgeführt, wenn check() true zurückgibt.
Wenn ich es jetzt auch noch dann hinbekommen würde, wenn die Enter-Taste gedrückt wird…das Formular auch nicht automatisch abgeschickt wird.
Ich frage die Enter-Taste ab:
document.onkeydown = TasteGedrueckt;
document.captureEvents(Event.KEYDOWN);
(jetzt mal nur für den lieben Netsie)
Und ich möchte halt, dass mit dem Drücken der Enter-Taste NUR meine Funktion aufgerufen wird, sonst nichts! Das war und ist mein ursächliches Problem.
Auch da ne Lösung? Wäre echt toll!
Gruß,
Knud
Vielleicht ist es ja sinnnvoll, hier das komplette Script:
Geräteauswahl Ergoline Avantgarde
var Netscape = 0;
var xfield = 0;
if(navigator.appName == „Netscape“) Netscape = 1;
function TasteGedrueckt(Ereignis) {
if (Netscape == 1) {
// prüfen auf Enter-Taste und ob im Suchfeld, ob nur 1 in Liste, dann ausführen
ntaste = Ereignis.which;
if (ntaste == 13 && xfield == 1) {
if (document.main.Geraet.length == 1) {
// Wert aus Liste holen und ausführen
alert(„NC sucks!“);
return false;
}
}
}
}
if (Netscape == 1) {
document.onkeydown = TasteGedrueckt;
document.captureEvents(Event.KEYDOWN);
}
function klicked() {
// Doppelklick in der Auswahl (nur IE und NC 6.x)
alert(„Doppelklick in der Liste“);
}
function suche() {
// eingegebener Suchtext in Großbuchstaben
suchtext = document.main.suchfeld.value.toUpperCase();
if (suchtext != „“) {
// text im kompletten Array suchen und Liste aktualisieren
fillSelectFromArrayFULL(document.main.Geraet,a_suche,suchtext)
} else {
// alte (gesicherte) Liste zurückspielen
j = 0;
for (i = 0; i < a_suche.length; i=i+2) {
document.main.Geraet.options[j] = new Option(a_suche[i]);
document.main.Geraet.options[j].value = a_suche[i+1];
j++;
}
}
}
function fillSelectFromArrayFULL(selectCtrl, itemArray, suchtext) {
// Liste löschen
for (i = selectCtrl.options.length; i >= 0; i–) {
selectCtrl.options[i] = null;
}
// neue Einträge hinzufügen
j = 0;
found = false;
for (i = 0; i < itemArray.length; i=i+2) {
stext = itemArray[i].toUpperCase();
if (stext.indexOf(suchtext)>=0){ //gefunden --> Eintrag wieder dazu
found = true;
selectCtrl.options[j] = new Option(itemArray[i]);
selectCtrl.options[j].value = itemArray[i+1];
j++;
}
}
if (found == false) { //nichts gefunden --> wieder Original zurückspielen
j = 0;
for (i = 0; i < itemArray.length; i=i+2) {
selectCtrl.options[j] = new Option(itemArray[i]);
selectCtrl.options[j].value = itemArray[i+1];
j++;
}
}
// ersten Eintrag selektieren
// selectCtrl.options[0].selected = true;
}
var a_suche;
function init() {
a_suche = new Array();
if (document.main) {
// Liste sichern
for(i=0;i<document.main.Geraet.length;++i) {
if (Netscape == 1) {
nelement = a_suche.push(document.main.Geraet.options[i].text);
nelement = a_suche.push(document.main.Geraet.options[i].value);
} else {
a_suche[a_suche.length] = document.main.Geraet.options[i].text;
a_suche[a_suche.length] = document.main.Geraet.options[i].value;
}
}
}
}
{
ntaste = window.event.keyCode;
if (ntaste == 13 && xfield == 1) {
if (document.main.Geraet.length == 1) {
// Wert aus Liste holen und ausführen
alert(„IE sucks!“);
return false;
}
}
}
Ergoline Avantgarde auswählen
Gerätetyp
52111000 ERGOLINE 550 AVANTGARDE SUPER POWER R AUGE ROT
52111100 ERGOLINE 550 AVANTGARDE SUPER POWER R AUGE ROT KLIMA
52116000 ERGOLINE 550 AVANTGARDE SUPER POWER SR AUGE ROT
52116100 ERGOLINE 550 AVANTGARDE SUPER POWER SR AUGE ROT KLIMA
52121000 ERGOLINE 550 AVANTGARDE SUPER POWER R AUGE BLAU
52121100 ERGOLINE 550 AVANTGARDE SUPER POWER R AUGE BLAU KLIMA
52126000 ERGOLINE 550 AVANTGARDE SUPER POWER SR AUGE BLAU
52126100 ERGOLINE 550 AVANTGARDE SUPER POWER SR AUGE BLAU KLIMA
52211000 ERGOLINE 600 AVANTGARDE SUPER POWER R AUGE ROT
52211100 ERGOLINE 600 AVANTGARDE SUPER POWER R AUGE ROT KLIMA
52215000 ERGOLINE 600 AVANTGARDE TURBO POWER R AUGE ROT
52215100 ERGOLINE 600 AVANTGARDE TURBO POWER R AUGE ROT KLIMA
52216000 ERGOLINE 600 AVANTGARDE SUPER POWER SR AUGE ROT
52216100 ERGOLINE 600 AVANTGARDE SUPER POWER SR AUGE ROT KLIMA
52217000 ERGOLINE 600 AVANTGARDE TURBO POWER SR AUGE ROT
52217100 ERGOLINE 600 AVANTGARDE TURBO POWER SR AUGE ROT KLIMA
52221000 ERGOLINE 600 AVANTGARDE SUPER POWER R AUGE BLAU
52221100 ERGOLINE 600 AVANTGARDE SUPER POWER R AUGE BLAU KLIMA
52225000 ERGOLINE 600 AVANTGARDE TURBO POWER R AUGE BLAU
52225100 ERGOLINE 600 AVANTGARDE TURBO POWER R AUGE BLAU KLIMA
52226000 ERGOLINE 600 AVANTGARDE SUPER POWER SR AUGE BLAU
52226100 ERGOLINE 600 AVANTGARDE SUPER POWER SR AUGE BLAU KLIMA
52227000 ERGOLINE 600 AVANTGARDE TURBO POWER SR AUGE BLAU
52227100 ERGOLINE 600 AVANTGARDE TURBO POWER SR AUGE BLAU KLIMA
34519800 ZENTRALABLUFTSTUTZEN SCHWARZ MIT WARMLUFTRÜCKF. F. AVANTGARDE 550/600
34519900 ZENTRALABLUFTSTUTZEN SCHWARZ OHNE WARMLUFTRÜCKF. F. AVANTGARDE 550/600
Suchfeld:
Bitte lesen Sie die Sicherheitshinweise zum gewählten Gerät!