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


针对HTML控件

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

在主页WebForm3中






    
    


    
用户名
密码
 

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("

您的信息如下

"); Response.Write("

用户名为:" + name); Response.Write("

密码为:" + password); } }


运行结果:

使用Request对象实现get/post表单传值_第1张图片   使用Request对象实现get/post表单传值_第2张图片


针对Web服务器控件:

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

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

WebForm3.aspx中






    
    


    
用户名
密码
 

在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(),"系统提示","");
        }

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("

您的信息如下

"); Response.Write("

用户名为:" + name); Response.Write("

密码为:" + password); } }

运行结果:

使用Request对象实现get/post表单传值_第3张图片使用Request对象实现get/post表单传值_第4张图片

为空时的运行结果:

使用Request对象实现get/post表单传值_第5张图片使用Request对象实现get/post表单传值_第6张图片


你可能感兴趣的:(Web开发)