簡體   English   中英

隱藏字段在回發時丟失內容

[英]Hidden Fields Lose Content on Postback

我正在嘗試創建一個無會話的網站,其中我正在使用StringBuilder將數據發布到另一種形式。 問題在於,將數據發布到其他表單后,頁面將正確加載,但是如果我重新加載頁面或單擊Enter,則隱藏字段將丟失其值。

例如

頁面A使用StringBuilder發布到頁面B,頁面B獲取表單數據並將其保存在隱藏字段中,但是現在如果刷新頁面,則所有內容都會丟失:

        StringBuilder sb = new StringBuilder();
        sb.Append("<html>");
        sb.AppendFormat(@"<body onload='document.forms[""form""].submit()'>");
        sb.AppendFormat("<form name='form' action='{0}' method='post'>", "page2.aspx");
        sb.AppendFormat("<input type='hidden' name='param1'  value='{0}'>", param1.Value);
        sb.AppendFormat("<input type='hidden' name='param2'  value='{0}'>", param2.Value);

        sb.Append("</form>");
        sb.Append("</body>");
        sb.Append("</html>");

        Response.Write(sb.ToString());

        Response.End();

為了保持其值,需要在runat="server".處標記隱藏字段runat="server". 那將是我的第一個方法-但是,如果您使用字符串構造表單,那么我認為這不起作用(而且表單也需要運行runat="server"

實際上是在查看您的代碼-您已經繞過了Web表單-因此您顯然沒有使用它們。 因此,我將如上所述使用Web表單,或者使用具有適當模型的MVC方法,如果操作正確,它將具有維持狀態的效果。

或者,可以從回發時的Request對象中獲取值-盡管有點老派。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM