0

昼用と夜用の 2 つのドロップダウン リストがあります。ボタンも 2 つあります。1 つのボタンは動的なテキスト ボックスを作成し、顧客が日中にやりたいことを入力し、夜を過ごしたい場所に入力できるようにします。

たとえば、ある顧客が 4 泊 4 日を選択した場合、最初のボタンを押すとテキストボックスが作成されます。

ユーザーが 2 番目のボタンをクリックすると、これらすべての値をデータベースに保存したいのですが、ポストバック時にフィールドが失われ、保存するデータがないことに気付きました。

ポストバック時に実行時に作成されたコントロールから値を取得するにはどうすればよいですか?

4

2 に答える 2

0

これを行う方法は次のとおりです。

 protected void Page_Load(object sender, EventArgs e)
 {
    if (Session["testTextBox"] != null)
    {
        Request.Form[Session["testTextBox"].ToString()].ToString()
    }
 }

 protected void Button1_Click(object sender, EventArgs e)
 {
    TextBox t = new TextBox { ID = "testTextBox" };
    this.Form.Controls.Add(t);
    Session["testTextBox"] = t.UniqueID;
 }

クライアント側の呼び出しでテキスト ボックスを追加する場合、UniqueID を保存する必要はありません。たとえば、Button1_Click はボタンのポストバック メソッドです。

于 2013-05-03T12:39:42.353 に答える