ASP.NET如何提交信息?
如果用html的submit按钮提交,设置好method和action就是了,但是如果我不是用submit提交,例如是选取了下拉框的某个项,然后再另一个页面显示这个项的值,请问应该怎么实现?
补充:```我也知道是写代码,问题是怎样写
如果用html的submit按钮提交,设置好method和action就是了,但是如果我不是用submit提交,例如是选取了下拉框的某个项,然后再另一个页面显示这个项的值,请问应该怎么实现?
补充:```我也知道是写代码,问题是怎样写
答案:第一种方法:楼上说的基本正确,但是不够详细,相必你也一知半解,我在这里详细说一下假如说你现在有两个页面,页面1和页面2
页面1是选择信息页面,最后做提交
页面2是接收信息页面,用来接显示收页面1所提交的信息
首先是页面1
假如说你用的下拉列表框是Dropdwonlist的话,那么所选择的信息的值就是 控件ID.selectvalue
提交按钮用button,那么就双击button进入button事件的代码部分
代码如下:Response.Redirect("页面2?check=控件ID.selectvalue);
意思是点击按钮直接跳转到第二个网页,并且把信息记录在check中
然后是页面2
界面部分很简单,拖一个laber上去就行了
然后空白处双击,进入pageload里面,写上程序代码
代码如下:
if (!this.IsPostBack)
{
string check=Page.Request["check"]==null?"":Page.Request["check"].ToString();
Label1.Text = check;
}这样在第二个页面上check的信息就赋值给了laber的标签。就能在第二个页面上显示出来了。
也就完成了页面之间信息的传递。
另外还有种方法就是可以利用全局程序类
就是用它的session对象。用来跟踪记录单一用户的信息。
我在这里简单叙述一下
首先在网站根目录下添加新项,选择全局应用程序类。
然后会出现一个global文件,双击该文件进入代码界面
找到session start事件,然后定义一个session
代码如下:Session.Contents["mess"] = ""
意思是定义了一个名字为mess(只要符合标识符的规定即可)的session,值为空值
然后在页面1的button(提交按钮)的事件代码出写上代码Session.Contents["mess"] = 控件ID.selectvalue;
最后是页面2在依然是拖一个laber,pageload里写上 Label1.Text = Session.Contents["mess"] .ToString;
大功告成!此方法可以一直保存该信息,直到与服务器断开连接,可以用来在多个页面见多次传递数据,比刚才的方法要好。
如果还有不懂的地方可以与我联系,大家相互学习交流,QQ:492058473
string abc = Request.Form["第一个页面下拉控件的ID"].ToString();
然后abc变量随便你用到哪里就在哪里出现 ..
搜索 "跨页提交数据" 查看相关资料在下拉框change事件里写
在Button,LinkButton,ImageButton中的PostBackUrl实现设置要提交的页面
或者用代码
Server.Transfer,Server.Execute
在目标页中Page_Load:
if (Page.PreviousPage != null)
{
if (PreviousPage.IsCrossPagePostBack){...}
}
上一个:asp.net面试题!
下一个:asp.net 上传控件推荐