簡體   English   中英

如何在另一個aspx頁面中發布動態生成的文本框?

[英]How to post dynamic generated text-boxes in another aspx page?

我的代碼根據用戶輸入的數字生成一個動態文本框,我想將其發布到另一個aspx頁面中,而不是將其發布到同一aspx頁面中:

protected void Button2_Click(object sender, EventArgs e)
{
    string numOftextbox= TextBox1.Text.ToString();
    int count = int.Parse(numOftextbox.Trim());
    for (int j = 1; j <= count; j++)
    {
        string id = j.ToString();
        TextBox txtfname = new TextBox();
        txtfname.ID = "TextBox_" + id + "_";
        txtfname.Width = 160;
        txtfname.EnableViewState = true;
        form1.Controls.Add(txtfname);
        form1.Controls.Add(new LiteralControl("<br/>"));
    }
}

如果只是一些文本框(基於某種邏輯),為什么不直接在頁面之間傳遞數字,既可以作為Sesson變量,也可以在查詢字符串中傳遞?

失敗的話,如果由於某種原因必須傳遞文本框,假設您要按照邏輯順序將這些新的文本框加載到后續頁面上,則只需將這些文本框添加到會話中,然后在后面的頁面中從那里訪問它們即可。

就像是:

string numOftextbox= TextBox1.Text.ToString();
    int count = int.Parse(numOftextbox.Trim());
    List<TextBox> txts = new List<TextBox>();
    for (int j = 1; j <= count; j++)
    {
        string id = j.ToString();
        TextBox txtfname = new TextBox();
        txtfname.ID = "TextBox_" + id + "_";
        txtfname.Width = 160;
        txtfname.EnableViewState = true;
        txts.Add(txtfname);
        form1.Controls.Add(txtfname);
        form1.Controls.Add(new LiteralControl("<br/>"));

    }
    Session["myTextBoxes"] = txts;

然后,在您的后續頁面上:

List<TextBox> txts = (List<TextBox>)Session["myTextBoxes"];
//Whatever you want to do with them...

暫無
暫無

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

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