Ändern Sie die HtmlForm-Aktion in C # ASP.NET 3.5

Ich habe eine Form als

<form id="form" action="" method="post" runat="server">

Beim Zugriff in C # Code-Behind über

HtmlForm form = (HtmlForm)this.FindControl("form");

und versuchen, die Aktion mit zu ändern

form.Attributes.Add("action","./newpage.aspx?data=data");

oder

form.Attributes["action"] = "./newpage.aspx?data=data");

Es wird keine Änderung vorgenommen. Das Formular wird weiterhin auf dieselbe Seite weitergeleitet. Wie kann ich die Aktion des Formulars in codebehind dynamisch ändern?

EXTRA DETAILS: Ich habe eine Seite, die eine get-Variable hat. Diese Get-Variable muss im Aktionsteil des Formulars gesendet werden. Die Antwort auf Seite 1 lautet also getvar1. Das Formular auf Seite 1 muss seine Post-Daten und getvar1 senden. Ich wollte dies über Code-Behind in der Aktion des Formulars anpassen, wollte aber vermeiden, InnerHtml zu verwenden, um das gesamte Formular zu schreiben. Holly schlug Javascript vor, aber ich habe keinen guten Weg gefunden, GET-Vars mit Javascript zu bekommen. ..... nur mehr Informationen für die Massen.

ANTWORT ERKLÄRUNG: Ich habe mich für die von @HollyStyles erwähnte Route entschieden. Ich habe Javascript verwendet, um die Formularaktion nach Abschluss des Ajax-Aufrufs zu ändern. Die als richtig gekennzeichnete Antwort ist jedoch der richtige Weg, dies über Code-Behind zu tun.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage