2009-03-15 15 views
0

habe ich den Standard-Code für Google-Suche in meiner Website (aus http://www.askdavetaylor.com/how_can_i_add_a_google_search_box_to_my_web_site.html):Probleme beim Hinzufügen von Google-Suche auf meiner Website

Wenn ich kompilieren und die Website laufen, bekomme ich folgende Fehler (sobald die Seitenladungen):

Ungültiges Postback- oder Callback-Argument. Die Ereignisvalidierung wird unter Verwendung von <pages enableEventValidation="true"/> in der Konfiguration oder <%@ Page EnableEventValidation="true" %> auf einer Seite aktiviert. Aus Sicherheitsgründen überprüft diese Funktion, dass Argumente für Postback- oder Callback-Ereignisse von dem Serversteuerelement stammen, das sie ursprünglich gerendert hat. Wenn die Daten gültig und erwartet sind, verwenden Sie die Methode ClientScriptManager.RegisterForEventValidation, um die Postback- oder Callback-Daten für die Validierung zu registrieren.

Was ist zu tun?

Antwort

0

Stellen Sie sicher, dass Sie runat = server nicht mit diesem Formular verwenden. Wenn das nicht funktioniert, posten Sie bitte den genauen Code, den Sie verwenden, Sie verwenden wahrscheinlich einen Teil von asp.net an einem Ort, den Sie nicht verwenden sollten. Wenn möglich, versuchen Sie, es zu den HTML-Steuerelementen zu halten, insbesondere eine asp.net-Schaltfläche wird ein asp.net-Postback tun, was nicht das ist, was Sie wollen.

0

Der einfachste Weg, den Fehler loszuwerden, ist, EnableEventValidation = "true" in die Page-Direktive am Anfang der aspx-Seite hinzuzufügen. Das wird den Fehler beseitigen, aber ich denke nicht, dass Ihr Code funktioniert :). Freddy weist darauf hin, dass Ihr Code versucht, ein clientseitiges Formular innerhalb eines serverseitigen Formulars zu senden.

Am Ende des Tages ist eine Google-Suche wirklich nur http://www.google.com/search?q=Your+search+term. Sie können dies leicht mit einigen einfachen Javascript ohne irgendwelche Formen überhaupt erreichen.

<input type="text" name="q" size="25" 
maxlength="255" value="" /> 
<input type="button" onclick="location='http://www.google.com/search?q=" + document.getElementById("q").value + "'" value="Google Search" /> 

Möglicherweise brauchen Sie etwas zwicken und entkommen, aber es sollte Ihnen die Idee geben.

Verwandte Themen