Сообщение формы Отправляет значения через Request.QueryString вместо Request.Form - PullRequest
3 голосов
/ 20 февраля 2009

Вот фрагмент HTML из стандартной страницы HTML:

<form name="login_form" action="http://localhost/BOB.WebPortal/LoginForm.aspx" method="post>
        <div id="content_logins">

            <div id="spacer_ie" style="width:990px; height:7px; border:none; float:left"></div>
            <div style="width:255px; height:22px; border:none; float:left"></div>
            <div style="width:172px; border:none; float:left; vertical-align:bottom">
                    <input type="text" name="uname" id="uname" size="13" /></div>
                <div style="width:110px; border:none; float:left">
                    <input type="password" name="pword" id="pword" size="13" /></div>
                <div style="width:140px; height:22px; border:none; margin-top:-2px; float:left">
                    <!--input class="btbgfix" type="image" src="images/submit.png" alt="Submit" value="Login"-->
                <input name="submit" id="loginButton" class="btbgfix" type="image" src="images/submit.png" alt="Submit" value="Login"></div>
            <div style="width:320px; height:22px border:none; float:left">
                <img name="login" src="x.gif" id="alogin" usemap="#m_login" border="0" width="320" height="22" />
                <map name="m_login" id="m_login">
                    <area shape="rect" coords="0,0,681,22" href="https://www.aetmyportfolio.com.au" target="_blank" alt="Go to AET My Portfolio" />
                </map>
            </div>  

            </div> 
    </form>

Моя проблема в том, что я пытаюсь получить значение post uname и pword с помощью Request.Form из события Page_Load в файле кода C # в моем приложении ASP.Net. Однако я считаю, что Request.Form пусто. Однако, если я использую Request.Params, я могу получить доступ к значениям, поскольку они передаются как значения строки запроса в URL.

Я что-то не так делаю в своем html?

Ответы [ 2 ]

8 голосов
/ 20 февраля 2009

Предполагая, что это прямая копия-вставка из вашего HTML, вам не хватает заключительной цитаты в конце "записи".

2 голосов
/ 20 февраля 2009

Поскольку вы работаете со стандартной HTML-страницей для контроля входа, похоже, что runat = "server" не решит все ваши проблемы. Вот краткий пример того, как я воспроизвел ваше решение. Кажется, правильно подобрать значения.

Страница входа

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
</head>
<body>
    <form name="login_form" action="Default.aspx" method="post">
    <div id="content_logins">
            user:<input type="text" name="uname" id="uname" size="13" /><br />
            pass:<input type="password" name="pword" id="pword" size="13" /><br />
            <input name="submit" id="loginButton" type="submit" alt="Submit" value="Login">
    </div>
    </form>
</body>
</html>

Default.aspx

    <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
        <br />
        <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
    </div>
    </form>
</body>
</html>

Default.aspx.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class _Default : System.Web.UI.Page 
{
    protected void Page_Load(object sender, EventArgs e)
    {
        this.Label1.Text = Request.Params["uname"].ToString();
        this.Label2.Text = Request.Params["pword"].ToString();
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...