Hallo,
ich sitze hier gerade an einer Webentwicklung. Ich habe ein Frameset, in einem der Frames ist eine Page eingebunden mit folgendem Inhalt (Passthru HTML) :
<input name="suchfeld" type="text" size="10" onkeypress="evalKeyForSubmit(event);">
<input type="button" name="search" value="Suche" onclick="sucheStarten();">
Darüber hinaus habe ich im JS-Header der Page folgendes definiert :
function sucheStarten()
{
var suchStr = document.forms[0].suchfeld.value;
var urlStr1 = "LkCat2IndexSearch/?SearchView&Query=";
var urlStr2 = urlStr1.concat(suchStr);
document.forms[0].suchfeld.value = "";
parent.frames[3].location.href = urlStr2;
}
function evalKeyForSubmit(event)
{
if (event && (event.which == 13 || event.which == 14))
sucheStarten();
}
Ziel soll es sein, daß ich in dem Eingabefeld einen Suchbegriff eingebe und per Enter/Return oder per Button die Suche starte. Das Suchergebnis wird dann in einem anderen Frame angezeigt.
Über den Button funktioniert das wunderbar, aber wenn ich Enter drücke, bekomme ich nur einen Fehler 400 zurück (Unbekannter Befehl).
Ich habe mal mit Firebug den Debugger mitlaufen lassen, wenn das JavaScript ausgeführt wird. Bei beiden Wegen läuft die Funktion "sucheStarten" wunderbar durch, die Variablen werden korrekt gefüllt und der letzte Befehl (parent.frames[3].location.href = urlStr2;) wird auch ausgeführt.
Nur leider halt mit unterschiedlichem Ergebnis.
Ich bin absolut kein JavaScript-Profi und weiß daher an dieser Stelle nicht weiter. Hab ich was übersehen ? Gibts einen einfacheren Weg, um das zu bewerkstelligen ?