-
- if (options.ClientSubmit || options.ActionUrl != null)
- page.RequiresPostBackScript ();
-
- return String.Format ("{0}WebForm_DoPostback({1},{2},{3},{4},{5},{6},{7},{8})",
- options.RequiresJavaScriptProtocol ? "javascript:" : "",
- ClientScriptManager.GetScriptLiteral (options.TargetControl.UniqueID),
- ClientScriptManager.GetScriptLiteral (options.Argument),
- ClientScriptManager.GetScriptLiteral (options.ActionUrl),
- ClientScriptManager.GetScriptLiteral (options.AutoPostBack),
- ClientScriptManager.GetScriptLiteral (options.PerformValidation),
- ClientScriptManager.GetScriptLiteral (options.TrackFocus),
- ClientScriptManager.GetScriptLiteral (options.ClientSubmit),
- ClientScriptManager.GetScriptLiteral (options.ValidationGroup)
- );
+
+ if(options.TrackFocus)
+ RegisterHiddenField (Page.LastFocusID, String.Empty);
+
+ string prefix = options.RequiresJavaScriptProtocol ? "javascript:" : String.Empty;
+ if (page.IsMultiForm)
+ prefix += page.theForm + ".";
+
+ return prefix + "WebForm_DoPostback(" +
+ ClientScriptManager.GetScriptLiteral (options.TargetControl.UniqueID) + "," +
+ ClientScriptManager.GetScriptLiteral (options.Argument) + "," +
+ ClientScriptManager.GetScriptLiteral (actionUrl) + "," +
+ ClientScriptManager.GetScriptLiteral (options.AutoPostBack) + "," +
+ ClientScriptManager.GetScriptLiteral (options.PerformValidation) + "," +
+ ClientScriptManager.GetScriptLiteral (options.TrackFocus) + "," +
+ ClientScriptManager.GetScriptLiteral (options.ClientSubmit) + "," +
+ ClientScriptManager.GetScriptLiteral (options.ValidationGroup) + ")";