WebFrom 【内置对象】— —跳转页面,页面传值
Response -- 响应请求对象
传值
Response.Redirect("url"); -- 地址?变量= 值
Response -- Response响应对象, 将 http 响应数据发送的客户端
Redirect -- 重定向,将客户端重定向到新的 URL,
Response.Write("string");
-- 将此字符串输出到页面的最顶部
Request -- 获取请求对象
接收
string s = Request["key"]; -- key 为传过来的变量
Request -- 获取请求对象
key -- 抓取从地址栏传过来的值
Restonse 与 Request 组合成 QueryString 传值方式。也称为 url传值,地址传值
1、不占用服务器内存
2、保密性差,传递值的长度有限
3、只能传 string 类型
例
Response.Redirect("Default2.aspx?a="+textBox1.Text);
string s = Request[a];
label1.Text = s ;
-- textBox1.Text 文本框的值
-- 必须在地址后加 ?变量=
Session
传值
string s = textBox1.Text;
session [ " a " ]= s ;
Response.Redirect( " 地址 " );
取值
Label.Text = session[ " a " ].Tostring( );
清除
sessin[ "a" ]=null ;
特点
Session里面能存储 Object 类型
存贮在服务端,占用服务器内存,很好用,速度很快但不要滥用,容易溢出
不需要地址传值,同一服务器上可以随意访问
浏览器一旦关闭,那么会断开此条Session的连接
-- (直接打开页2,页2 无数据,页1打开页2,页2有数据,关闭页2再直接打开页2 ,页2无数据)
生命周期:20分钟,每一次新的请求都会刷新这个时间
例
//发
Student s = new Student();
s.Name = "张三";
s.Sex = "男";
Session["a"] = s;
Response.Redirect("Default2.aspx"); //收
if (Session["a"] != null)
{
Student ss = Session["a"] as Student;
Label1.Text = ss.Name + ss.Sex; }
Cookie
与Session一模一样
不一样的地方:Cookies是存储在客户端的 ,有可能被非法访问
传 string 类型,传汉字会因编码方式不同出现乱码
传值:
string s = textBox1.Text;
Response.Cookies["aa"].Value = s;
Response.Redirect( " 地址 " ); -- 只能是 string 类型
取值:
string ss = Request.Cookies["aa"].Value;
-- 只能用 Request 取值
清除(将日期变为过期)
Response.Cookies["user"].Expires = DateTime.Now.AddDays(-1);
例
1、判断、赋值
void Button1_Click(object sender, EventArgs e)
{
//判断用户名密码是否正确
if (TextBox1.Text == "zhangsan" && TextBox2.Text == "")
{
Response.Cookies["user"].Value = TextBox1.Text; if (CheckBox1.Checked) //如果选保存密码
{
Response.Cookies["user"].Expires = DateTime.Now.AddDays();
} //改会话 cookies 为持久 cookies Response.Redirect("Default2.aspx");
}
else
{
Response.Write("用户名密码错误!");
} }
2、判断取值
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//判断是否有传值过来 ——--—— 此时不加 Value
if (Request.Cookies["user"] != null)
{
Label1.Text = Request.Cookies["user"].Value + "欢迎你!";
}
else
{
Response.Redirect("Default.aspx");
}
Button1.Click += Button1_Click;
} //退出按钮
void Button1_Click(object sender, EventArgs e)
{ //改变会话时间 关闭 cookies 会话
Response.Cookies["user"].Expires = DateTime.Now.AddDays(-);
Response.Redirect("Default.aspx");
}
}
if ( Request.Cookies["user"] != null )
-- 判断是否有传值过来,此时不加 Value
Response.Cookies["user"].Expires = DateTime.Now.AddDays(3);
-- 改会话 cookies 为持久 cookies(加三天时间)
Application
全局公共变量组
使用方法:与Session一样,传任意类型,
实际运用过程中 常被用作缓存
存放位置:服务器
特点:所有访问用户都是访问同一个变量,但只要服务器不停机,变量一直存在于服务器的内存中
不要使用循环大量的创建Application对象,可能会造成服务器崩溃。
生命周期:永久,只要服务器不停机
例
string s = TextBox1.Text;
Application["aaa"] = s;
Label2.Text = Application["aaa"].ToString( );
ViewState
用于记录页面的一些状态,就像人的病例,比如当执行提交后,网页可以保留一些已经输入的文本框而非清空
webform中微软已经给我们做好了这个对象,自带此功能。
在查看源代码会发现一个自动加载的 aspNetHidden 标记,里面的隐藏域的东西就是 viewstate
.aspx 是由 .ashx .html 组成, .ashx 写后台 .html 展示
!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<form action="aaaa.ashx" method="post"> <!-- post 可理解我服务端传值-->
<!-- method="get"--> <!-- get 可理解为客户端传值 -->
<input type="text" name="txt1" />
<input type="submit" value="提交" /> </form>
</body>
</html>
html
<%@ WebHandler Language="C#" Class="aaaa" %> using System;
using System.Web; public class aaaa : IHttpHandler { public void ProcessRequest (HttpContext context) { //所有的东西都要写在这个方法里
string s = context.Request["txt1"]; context.Response.Write(s);
context.Response.Redirect("HtmlPage.html"); } public bool IsReusable {
get {
return false;
}
} }
aspx
WebFrom 【内置对象】— —跳转页面,页面传值的更多相关文章
- request.setCharacterEncoding 和常用内置对象 跳转
1.直接转码 new String(name.getBytes("ISO8859_1"),"GBK") 2. request.setCharactorEncod ...
- Response内置对象
request内置对象:主要用来处理用户的请求 response内置对象:处理对用户的响应(在调用service方法时容器会传递过来) response重要方法: public void addCoo ...
- JSP 9个内置对象
JSP内置对象(隐式对象)是JSP容器为每个页面自动实例化的一组对象,开发者可直接使用,也被称为预定义变量. JSP容器提供了9个内置对象 request // javax.servlet.http. ...
- 002Jsp的内置对象
1 课程回顾 Jsp基础 1)Jsp的执行过程 tomcat服务器完成:jsp文件->翻译成java文件->编译成class字节码文件-> 构造类对象-> 调用方法 tomca ...
- 内置对象(Session、Application、ViewState)
内置对象:为了跨页面传值和状态保持.→HTTP的无状态性 [4.]Session:每一台电脑访问服务器,都会是独立的一套session,key值都一样,但是内容都是不一样的 以上所有内容,都跟cook ...
- ASP.NET 常用内置对象详解-----Response
利用提供的内置对象,可以实现页面之间的数据传递及实现一些特定的功能,如:缓冲输出,页面重定向等等. Response :响应,反应 Request:请求 Server:服务器 Application: ...
- jsp篇 之 Jsp中的内置对象和范围对象
Jsp中的内置对象: 在jsp页面代码中不需要声明,直接可以使用的对象. 一共有[9个内置对象]可以直接使用. 对象类型 名字 PageContext pageC ...
- JSP中的Java代码和内置对象
一.JSP中的Java代码 (一)JSP页面中有三种方式嵌入java代码: 1.java的表达式 格式:<%= java表达式 %> 2.java的语句 格式:<% java语句&g ...
- 在jsp中常用的内置对象(5个)小总结和两种页面跳转方式(服务器端调转、客户端跳转)的区别
jsp中常用的几个内置对象: 一.request对象 主要作用: (1)获取请求页面的信息 比如:request.getParameter("参数名"); (2)获取客户端 ...
- jsp页面元素和内置对象
java server pages其根本是一个简化的servlet设计.实现了在java当中使用html标签.javaEE标准 一.页面元素 1.静态内容 html.js.css相关标签元素. 2.指 ...
随机推荐
- [LintCode] 拓扑排序
http://www.lintcode.com/zh-cn/problem/topological-sorting/# 给定一个有向图,图节点的拓扑排序被定义为: 对于每条有向边A--> B,则 ...
- 检查.net dll构建的目标平台是any cpu、x86、x64
有时候,需要检查构建的dll是否针对正确的平台 可以使用CorFlags.exe(它是.NET Framework SDK的一部分)从dll中查找此信息.运行CorFlags.exe将产生以下输出: ...
- DataTable 快速导入数据库——百万条数据只需几秒
public void InsertTable(DataTable dt, string TabelName, DataColumnCollection dtColum) { string str = ...
- 一起做OJ-环境搭建
这几天,看到OJ火了起来,尤其是OnlineJudge(QingDaoU)和HUSTOJ. 作为正在花大力研究PHP和Bootstrap的我,看到了,当然不会甘心. 于是,我决定把学到的知识用在编写O ...
- 关于Maven整合SSM项目中报错Invalid bound statement (not found):的问题解决
如图:控制不报错 页面就是报500的错误 查阅了好多资料 都说是Mapper文件写的不对 我仔细找了好几遍也解决不了问题.. 解决: 坑爹的问题害我找了一上午原因,原来是需要在pom.xml文件中 ...
- 安装openvpn
1.安装服务器端openvpn yum install -y openvpn easy-rsa 如果已存在的yum源中找不安装文件,则可通过以下安装epel yum源 rpm -ivh http:/ ...
- com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server
出现上述bug的原因如下: 在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为. 禁止方式如下:在application.propertie ...
- Selenium3 + Python3自动化测试系列四——鼠标事件和键盘事件
一.鼠标事件 在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类提供. ActionChains 类提供了鼠标操作的常用方法. ActionChains 类的成 ...
- Python:使用异常处理来判断运行的平台
try: import termios, TERMIOS 1 except ImportError: try: import msvcrt 2 except ImportError: try: fro ...
- h5 端图片上传-模拟多张上传
1.由于后端的限制,上传图片到服务器只能的一张一张传2.显示图片预览是本地的图片3.根据服务器返回的结果拿到相应的路径保存到提交评论的接口中4.删除的时候,需要删除对应的路径,不要把删除的提交到评论的 ...