2

メイン ASP ページからテキスト ボックスの値を取得しようとしています。ユーザーに、名前と姓をそれぞれのテキスト ボックスに入力するように求めます。次に、送信ボタンをクリックすると、DefaultPage.aspx という別の Web ページに移動します... ボタンをクリックすると新しいページに移動しますが、テキスト ボックスの値が送信されず、新しいページに表示されません。

ここに私のコードがあります:

ボタンの ASP コード:

asp:Button ID="Submit" runat="server" Text="Button" OnClick="Submit_Click"

これが私のメインページのコードです:

protected void Submit_Click(object sender, EventArgs e)
{
    Response.Redirect("DefaultDetails.aspx?FirstName=" + txtFirstName.Text +    "&LastName=" + txtLastName.Text);
}

そして、ここに私のデフォルト/新しいページコードがあります:

protected void Page_Load(object sender, EventArgs e)
{
    if (PreviousPage != null)
    {
        string firstName = Request.QueryString["FirstName"];
        string lastName = Request.QueryString["LastName"];

    }
}

2 つのテキスト ボックスのコードは次のとおりです。

        <asp:TextBox ID="txtFirstName" runat="server"></asp:TextBox>
        <asp:TextBox ID="txtLastName" runat="server"></asp:TextBox>

最初の文字列行 (つまり、新しいページの firstName) に改行を挿入すると、firstName と LastName の内部の値は null に等しくなります。

4

4 に答える 4

0

理由は、PreviousPage が null であるためです。したがって、firstName と lastName は初期化されません。

「Transfer メソッドを使用するか、クロスページ ポスティングを使用して、ある ASP.NET ページから別のページに処理を転送する場合、元のページには、宛先ページに必要な可能性のある要求情報が含まれています。その情報にアクセスするには、PreviousPage プロパティを使用できます。現在のページが直接の要求 (別のページからの転送またはクロスポストではない) の結果としてレンダリングされている場合、PreviousPage プロパティには null が含まれます。

ここにリンクの説明を入力して参照してください

于 2013-08-15T11:28:48.280 に答える