使用Request对象实现get/post表单传值

3001人阅读 评论(0) 收藏 举报
分类:


针对HTML控件

使用Post方式提交表单到WebForm4中

在主页WebForm3中

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <style type="text/css">
        .auto-style1 {
            width: 45%;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server" method="post" action="WebForm4.aspx">
    <div>
    
        <table class="auto-style1">
            <tr>
                <td>用户名</td>
                <td>
                    <input id="Text1" type="text" name="a"/></td>
            </tr>
            <tr>
                <td>密码</td>
                <td>
                    <input id="Password1" type="password" name="b"/></td>
            </tr>
            <tr>
                <td>
                    <input id="Submit1" type="submit" value="提交" /></td>
                <td> </td>
            </tr>
        </table>
    </div>
    </form>
</body>
</html>

WebForm4中显示传递的表单信息:

 public partial class WebForm4 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string name = Request.Form["a"];
            string password = Request.Form["b"];//对于HTML控件,只能用控件的name
            Response.Write("<h1>您的信息如下</h1>");
            Response.Write("<p>用户名为:" + name);
            Response.Write("<p>密码为:" + password);
        }
    }

运行结果:

   


针对Web服务器控件:

①采用post方式时,Request.Form[" "]必须是控件的ID,不能使用name,实现方法同上

②采用get方式,采用传递URL的形式

WebForm3.aspx中

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <style type="text/css">
        .auto-style1 {
            width: 45%;
        }
    </style>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
        <table class="auto-style1">
            <tr>
                <td>用户名</td>
                <td>
                    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>密码</td>
                <td>
                    <asp:TextBox ID="TextBox2" runat="server" TextMode="Password"></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td>
                    <asp:Button ID="Button1" runat="server" Text="提交" onclick="Button1_Click"/>
                </td>
                <td> </td>
            </tr>
        </table>
    </div>
    </form>
</body>
</html>

在WebForm3.aspx.cs中给button添加触发函数,使之给WebForm4发送URL,注意表单中不能有action="WebForm4",因为Button的默认type是submit,点击button后同样会触发表单的提交和WebForm4的加载,使得第2次加载的WebForm4会覆盖之前因为redirect传递URL的第1次加载,导致第1次的传值效果被覆盖。

WebForm3.aspx.cs中:

protected void Page_Load(object sender, EventArgs e)
        {
            
        }
        protected void Button1_Click(object sender, EventArgs e)
        {
            if (TextBox1.Text.Trim() != "" && TextBox2.Text.Trim() != "")//去空格后是否为空判断
                Response.Redirect("WebForm4.aspx?name=" + TextBox1.Text + "&pwd=" + TextBox2.Text);
            else
                ClientScript.RegisterStartupScript(this.GetType(),"系统提示","<script>alert('不能为空')</script>");
        }

WebForm4.aspx.cs中

public partial class WebForm4 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string name = Request.QueryString["name"];//获取URL里面name参数的值
            string password = Request.QueryString["pwd"];//获取URL里面pwd参数的值
            Response.Write("<h1>您的信息如下</h1>");
            Response.Write("<p>用户名为:" + name);
            Response.Write("<p>密码为:" + password);
        }
    }

运行结果:


为空时的运行结果:



查看评论

使用request对象获取表单的信息

使用request对象获取表单的信息
  • Java_Mike
  • Java_Mike
  • 2016-09-05 22:41:25
  • 2913

讨论request.form()和request

   大家在学习ASP时可能在很多书上都看到request的用法,很多书上用request("name")来接收传过来的参数所以很多人都认为这样的方式是最好的接收参数的方法,可以代替request.f...
  • tangqiyang008
  • tangqiyang008
  • 2007-12-03 14:20:00
  • 2069

Request.Form的用法

在CS文件中获得对应页面中的下拉框DropDownList_sitebranch值可以有以下几种方法获得:        siteInfo.FZJGID = DropDownList_sitebran...
  • deepwishly
  • deepwishly
  • 2010-04-13 09:21:00
  • 1343

ASP.NET中的Request和Respone对象的使用

表单里面重要的是method,表单的提交方法。
  • haiyan_cf
  • haiyan_cf
  • 2014-04-30 21:21:04
  • 10186

request和formcollet的用法及细节

本文是我摘录相关文字整理出来的。FormCollection用来在controller中获取页面表单元素的数据。它是表单元素的集合,包括按键提交元素。...
  • Faith1460
  • Faith1460
  • 2017-04-14 15:49:03
  • 365

jsp页面通过request传值

  • u012834240
  • u012834240
  • 2016-07-16 10:58:36
  • 979

后台通过HttpServletRequest对象获取页面表单传递过来的参数的方式

后台通过HttpServletRequest对象获取页面表单传递过来的参数的方式如下: protected void doPost(HttpServletRequest request, HttpSe...
  • u011967234
  • u011967234
  • 2015-06-16 10:27:37
  • 6926

给HttpServletRequest传参的方法

1.一般使用request.getParameter("xxx");从jsp表单中读取xxx对应值2.也可以不用从jsp表单获取,在url中附带参数,如:http://localhost:8080/c...
  • u012033124
  • u012033124
  • 2016-12-05 16:00:36
  • 1297

Request.Form获取HTML页面内容

在.aspx页面中使用html的标签 ,将整个页面的内容送至action属性所指向的url,注意method属性为post。 注意Request.Form是接受post方法的对象。 例如: 在Name...
  • qqagsd155451
  • qqagsd155451
  • 2016-12-04 21:37:18
  • 3256

HttpServletRequest request 获取form参数的两种方式

@RequestMapping(value="/pay",method = RequestMethod.POST) public String buildRequest(HttpServletReq...
  • airujingye
  • airujingye
  • 2016-07-26 18:46:26
  • 8776
    个人资料
    持之以恒
    等级:
    访问量: 13万+
    积分: 4267
    排名: 8865
    赞助一下
    如果您觉得我的文章对您有帮助的话,不妨小额赞助一下,激励我写出更多的好文章,谢谢大家!

    以下是我的支付宝和微信账户