.net 后台提交表单并返回结果

5 篇文章 0 订阅
5 篇文章 0 订阅

a.aspx后台提交表单,b.aspx接收表单(根据input的name获得值)代码点击此处.rar

1、a.aspx

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

<!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>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="name" runat="server"></asp:TextBox><asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
    </div>
    </form>
</body>
</html>

后台代码

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

public partial class a : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        //如果表单中要发送中文,可以对数据进行编码gb2312/gbk。

        Encoding myencode = Encoding.GetEncoding("gb2312");

        //然后处理要传的表单数据。
        string strpost = HttpUtility.UrlEncode("name_c", myencode) + "=" + HttpUtility.UrlEncode(name.Text, myencode)+"&"
           + HttpUtility.UrlEncode("name_e", myencode) + "=" + HttpUtility.UrlEncode(name.Text+"测试", myencode);
        //string strpost = "name_c=" + name.Text + "&" + "name_e=" + name.Text;
        //有多个参数可以用"&"拼接。

        //接着序列化参数。

        byte[] postBytes = Encoding.ASCII.GetBytes(strpost);

        //创建请求示例。

        HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create("http://localhost:61444/b.aspx");

        //下面可以选择请求的方式,标头。

        req.Method = "POST";

        req.ContentType = "application/x-www-form-urlencoded;charset=gb2312";

        req.ContentLength = postBytes.Length;

        using (Stream sendStream = req.GetRequestStream())
        {

            sendStream.Write(postBytes, 0, Convert.ToInt32(req.ContentLength));

        }
        using(WebResponse wr=req.GetResponse())
        {
            Stream respStream = wr.GetResponseStream();
            using (System.IO.StreamReader reader = new System.IO.StreamReader(respStream, Encoding.GetEncoding("utf-8")))
            {
                Label1.Text = reader.ReadToEnd();
            }
        }
    }
}

2、b.aspx

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

public partial class b : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string ss = Request.Form["name_c"].ToString() + Request.Form["name_e"].ToString();
        Response.Write(ss);
        //ExistsFile(Server.MapPath("test/weather.txt"));//检查文件是否存在
        写入文本
        //StreamWriter sr = new StreamWriter(Server.MapPath("test/weather.txt"), false, System.Text.Encoding.Default);
        //try
        //{
        //    sr.Write(Request.Form["name_c"].ToString());
        //    sr.Close();
        //    Response.Write("<script>alert('文件写入成功');</script>");
        //}
        //catch
        //{
        //    Response.Write("<script>alert('文件写入失败');</script>");
        //}
    }
    //检查文件,如果文件不存在则创建
    private void ExistsFile(string FilePath)
    {
        //if(!File.Exists(FilePath))
        //File.Create(FilePath);
        //以上写法会报错,详细解释请看下文.........
        if (!File.Exists(FilePath))
        {
            FileStream fs = File.Create(FilePath);
            fs.Close();
        }
    }
    
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值