2009-07-01 13 views
0

ich eine Facebook-Spiel-Anwendung, die auf Facebook Plattform unter folgendem Link veröffentlicht wird: FaceBookGameApplicationin Javascript Nachladen

und ich bin mit iframe und das Problem nun, dass die Frage in dem Spiel nach der Beantwortung ich die Seite neu zu laden von Javascript-Code:

window.location.href = sURL; 

und über die Entsendung zurück i 2 divs der Partitur am updatting und trifft mit neuen Werten, indem den Wert existiert immer und es mit einer entsprechenden Benutzer Antwort, wie das Spiel sind einige Fragen und Benutzer Inkrementieren beantwortet sie:

Hits = int.Parse(HitsNo.InnerText) + 1; 
HitsNo.InnerText = Hits.ToString(); 

oder:

Hits = int.Parse(HitsNo.InnerHTML) + 1; 
HitsNo.InnerHTML = Hits.ToString(); 

und in der ersten Zeit die Werte der Nachladen geändert und danach auf jeder Zeit des nachladen die Werte nicht ändern und die 2 divs nicht nehmen die neue Werte, die ich auf sie eingestellt habe. Die 2 Divs Runat-Server und ich benutze C# unter. Net 2008 so was bewirkt, dass die beiden Divs nicht ihre inneren Text oder innerHTML mit neuen Bewertungen von Codebehind setzen?

Dank im Voraus

Antwort

1

Wenn ich richtig folgende bin, sind Sie HTML divs mit der Partitur angezeigt werden soll. Dann holen Sie aus Code-Behind den HTML-Code aus diesen divs, um auf den neuesten Score-Wert zuzugreifen.

Das Problem ist, dass die DIVs nicht Teil des HTTP-Post sind. Jedes Mal, wenn Ihr Code-Behind ausgeführt wird, verwendet er den ursprünglichen Wert, fügt einen hinzu und zeigt dann den neuen Wert an. Beim nächsten Postback wird erneut der ursprüngliche Wert verwendet, ein Wert hinzugefügt und angezeigt.

Verwenden Sie stattdessen ein verstecktes Eingabeelement, um den Punktestand zu speichern, da dies Teil des http-Posts bei jedem Umlauf sein wird.

Zum Beispiel:

<input type="hidden" id="HitsNo" value="1" runat="server" /> 

Dann können Sie diese versteckten Wert in Ihrem Code-Behind-Zugang.