フォームに「ASP:TextBox」コントロールがいくつかあります(約20個)。
フォームが読み込まれると、データベースからテキストボックスが読み込まれます。
ユーザーは入力された値を変更することができ、フォームを送信するときに、サーバーに送信された値を取り込み、条件付きで保存します(ビジネスロジックによって決定されます)。
テキストボックスのうち、1つを除くすべてが意図したとおりに動作します。フォームポストにテキストボックスデータが含まれていません。[ASP.NET C#]
ポストバック時に奇数ボックスアウトには、ユーザーがボックスに入力した更新値は含まれません。
アプリケーションをデバッグするときに、myTextBox.Text
には、ユーザーが入力した新しい値ではなく、事前に設定された古い値が反映されていることが明らかです。
他のすべてのボックスには、それぞれのユーザー指定の値が正しく表示されます。
回避策が見つかりました。
私の解決策は、Request.Form
オブジェクトのテキストボックスの値を基本的に抽出することでした:Request.Form[myTextBox.UniqueID]
には、ユーザー指定の値が含まれています。
ここで何が起こっているのですか?
私が言及したように、他のテキストボックスには、ユーザが入力した値が正しく入力されています。この問題のあるテキストボックスには、関連するロジックがありません。
このテキストボックスとの主な違いは、これは複数行のボックス(メモを入力するためのもの)で、ASP.NETの「入力」タグの代わりにHTMLの「textarea」タグとしてレンダリングされると考えられます。