---
title: "Hantera en form submit() i codebehind."
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/163025-hantera-en-form-submit-i-codebehind"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Arizon"
published: "2007-07-30T11:57:13.000Z"
updated: "2007-08-17T12:06:00.000Z"
replies: 15
views: 861
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/163025-hantera-en-form-submit-i-codebehind"
---

# Hantera en form submit() i codebehind.

## #1 — Arizon, 2007-07-30T11:57Z

Hejsan! jag har en form submit som jag inte hanterar serverside eftersom jag inte vet hur jag ska göra riktigt... är det nån som kan posta ett mycket enkelt exempel på hur man hanterar det?

min form ser ut såhär:

```
<form id="LogonForm" method="POST" action="SignPage.aspx">
    <input name="signature" value="" type="HIDDEN" />
</form>
```

 

vidare undrar jag om någon vet hur applet-callback till javascript via liveConnect funkar? jag har suttit med samma applet i 2 v utan att få den att fungera. 
min js-funktion ser ut såhär:

```
function onLogonOK(logonMessage) 
{
    document.LogonForm.signature.value = logonMessage;
    document.LogonForm.submit()
}
```

 
den körs från samma sida som appleten.

Permalänk: https://www.webforum.nu/p/163025

## #2 — Arizon, 2007-07-30T12:37Z

appletkoden för att anropa onLogonOk ser ut såhär:

```
 public void a(String string, String[] strings) {
	try {
	    JSObject.getWindow(a).call(string, strings);
	} catch (Throwable throwable) {
	    System.out.println("\nFunction call: " + string + "\n"
			       + "Communication Error to JavaScript: "
			       + throwable);
	}
    }
    
    public Object a(String string) {
	Object object = null;
	String string_0_ = null;
	Object object_1_ = null;
	try {
	    JSObject jsobject = JSObject.getWindow(a);
	    try {
		StringTokenizer stringtokenizer
		    = new StringTokenizer(string, ".");
		for (int i = 0; i < stringtokenizer.countTokens() - 1; i++) {
		    string_0_ = stringtokenizer.nextToken();
		    jsobject = (JSObject) jsobject.getMember(string_0_);
		}
		if (stringtokenizer.hasMoreTokens()) {
		    string_0_ = stringtokenizer.nextToken();
		    object_1_ = jsobject.getMember(string_0_);
		}
	    } catch (Throwable throwable) {
		System.out.println("\nJavaScript property not found: "
				   + string_0_ + " of " + string + "\n"
				   + throwable);
	    }
	} catch (Throwable throwable) {
	    /* empty */
	}
	return object_1_;
```

Permalänk: https://www.webforum.nu/p/2010364

## #3 — emission, 2007-07-30T16:31Z

Eftersom du använder icke serverbundna kontroller (inte runat=server) så får du förlita dig på att kolla Request-värden, t.ex. i Page_Load

```
if (!string.IsNullOrEmpty(Request.Form["signature"]))
{
   //Gör saker
}
```

Permalänk: https://www.webforum.nu/p/2010409

## #4 — Arizon, 2007-07-31T05:29Z

ok, skulle jag kunna göra formen till serverkomponent och vinna något på det?

Permalänk: https://www.webforum.nu/p/2010511

## #5 — Arizon, 2007-08-14T09:27Z

Faktum är att jag redan har en annan form med diverse linkbuttons osv som är runat=server, och man tillåts bara ha en form som är serverbunden per sida verkar det som (?). Jag ska prova med det ovan givna förslaget, men mottager gärna tips på hur jag kan få min form att var serverbunden.

Permalänk: https://www.webforum.nu/p/2014210

## #6 — emission, 2007-08-14T11:31Z

Man kan bara ha ett serverbundet formulär, vilket inte så konstigt, med tanke på hanteringen av viewstate etc. Paul Wilson har byggt runt problemet, men det kan blir lite knöligt att använda det också.

<http://sourceforge.net/projects/wilsonwebform/>

Du kan ju submitta det bundna formuläret också. Skapa en dold knapp och exekvera dess PostBackReference-script.

Permalänk: https://www.webforum.nu/p/2014226

## #7 — Arizon, 2007-08-15T08:44Z

right.. jag har kollat lite. det verkar onödigt avancerat.. Går det att sumitta en form som inte är runat="server"? eller måste den var serverbunden för att man ska kunna göra det? om det inte går får jag väl försöka styra upp en button-postback

fråga 2: körs page_load när man gör forms.submit() på en icke-serverbunden kontroll? detta borde isf generera IsPostBack == true ?

Permalänk: https://www.webforum.nu/p/2014460

## #8 — emission, 2007-08-15T09:57Z

Ja, Page_Load körs. Det ligger i sidans livscykel och styrs inte av några externa faktorer.

Nej, IsPostBack är false. Det räknas inte som en postback om inte sidan kan garantera att POST:en faktiskt kom från samma sida, och det kan den inte om man använder ett obundet formulär.

Permalänk: https://www.webforum.nu/p/2014484

## #9 — Arizon, 2007-08-15T10:00Z

alright.. så det jag kan göra är att kolla  if(!request.form\["MinInput"\] == null) ? och sen i den göra det jag ska med min input? Jag kan ju inte kolla IsPostBack lixom...

Permalänk: https://www.webforum.nu/p/2014487

## #10 — emission, 2007-08-15T10:14Z

Japp

Permalänk: https://www.webforum.nu/p/2014495

## #11 — Arizon, 2007-08-15T11:32Z

> **emission skrev:**
>
> Ja, Page_Load körs. Det ligger i sidans livscykel och styrs inte av några externa faktorer.
> 
> Nej, IsPostBack är false. Det räknas inte som en postback om inte sidan kan garantera att POST:en faktiskt kom från samma sida, och det kan den inte om man använder ett obundet formulär.

Page load körs när man först kommer till sidan, men i nuläget så körs den INTE av min forms.submit(), fast det kanske beror på att jag får fel någonannanstans innan själva postbacken, detta håller jag på att logga för tillfället och återkommer senare med rapport.

Page_Load SKA alltså köras av en form.submit som inte är serverbunden?

Permalänk: https://www.webforum.nu/p/2014514

## #12 — emission, 2007-08-15T11:59Z

Japp

Permalänk: https://www.webforum.nu/p/2014520

## #13 — Arizon, 2007-08-16T13:37Z

OK. såhär är det. Sidan laddas när man redirectas dit, page load körs vid detta tillfälle. när sidan laddas, laddas också en applet. appleten skickar en string till en javascriptfunktion som tar emot och processerar denna text (detta fungerar) efter det så ska en del av den texten läggas i en form och formen ska submittas från den tidigare nämnda javascriptfunktionen. (formen är inte runat=server) och när den submittas så ska det hända grejjer i page_load. 

Loggfil:

> 2007-08-16 15:18:35,012 \[17\] INFO  loginLogger - Redirectar till login...
> 2007-08-16 15:18:36,137 \[17\] DEBUG loginLogger - inne i page load
> 2007-08-16 15:18:36,137 \[17\] DEBUG loginLogger - Laddar loginsida för BID

 
Loggfilen tar slut efter detta. om submit() hade kört page load så hade vi haft en rad till med "inne i page load" eftersom det är det absolut första som händer i page load.

min page_load:

```
 protected void Page_Load(object sender, EventArgs e)
        {

            loginLogger.Debug("inne i page load");
            
            if ((Request.Form["signature"])!=null)
            {
                Session["signature"] = Request.Form["signature"];
                loginLogger.Debug("Från signature:" + Session["signature"]);
                //loginLogger.Debug("Från sig: " + Request.Form["sig"]);
                loginLogger.Debug("Om det skapats en signatur så ska vi redirecta till signpage.aspx");
                loginLogger.Info("Redirectar till SignPage.aspx");
                Response.Redirect("SignPage.aspx");
            }
            

            if (!IsPostBack)
            {
                loginLogger.Debug("Laddar loginsida för BID");
                contCbtLogin.Visible = true;
                pCbtLogin.Visible = true;
            }
        }
```

 

Page load körs alltså inte av att man submittar formen. måste den submittas på nåt annat sätt när den inte är serverbunden?
formen ser ut såhär:

```
<form id="LogonForm" method="POST" action="cbt_login.aspx">
    <input name="signature" value="" type="HIDDEN" />
</form>
```

 

är det enda alternativet en gömd button och att använda dess postback-funktion nu eller?

Permalänk: https://www.webforum.nu/p/2017596

## #14 — freguz, 2007-08-16T13:56Z

Långskott: Har du AutoEventWireup="true"?

Permalänk: https://www.webforum.nu/p/2017605

## #15 — Arizon, 2007-08-17T08:03Z

> **freguz skrev:**
>
> Långskott: Har du AutoEventWireup="true"?

Jo, nog har jag det alltid!

Permalänk: https://www.webforum.nu/p/2017741

## #16 — Arizon, 2007-08-17T12:06Z

Jag har delvis löst det. formen submittas nu iaf =)

Permalänk: https://www.webforum.nu/p/2017765

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/163025-hantera-en-form-submit-i-codebehind
