精华内容
下载资源
问答
  • 列举页面之间的传值方式
    2020-06-20 08:57:05

    使用QueryString, 如....?id=1; response. Redirect().... 
    使用Session变量
    使用Server.Transfer

    更多相关内容
  • (包括头信息、系统信息、请求方式以及请求参数等)。request对 象的作用域为一次请求。 常用方法: getParameter(String strTextName) 获取表单提交的信息. getParameterNames() 获取客户端提交的所有参数的名字。 ...

    JSP中一共预先定义了9个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception

    1、request对象:javax.servlet.http.HttpServletRequest

    request对象代表了客户端的请求信息,主要用于接受通过HTTP协议传送到服务器的数据。(包括头信息、系统信息、请求方式以及请求参数等)。request对 象的作用域为一次请求。

    常用方法:

    getParameter(String strTextName) 获取表单提交的信息.

    getParameterNames() 获取客户端提交的所有参数的名字。

    2、response对象:javax.servlet.http.HttpServletResponse

    response 代表的是对客户端的响应,主要是将JSP容器处理过的对象传回到客户端。

    常用方法:

    sendRedirect(URL)方法实现客户的重定向。

    3、session对象:javax.servlet.http.HttpSession

    session 对象是由服务器自动创建的与用户请求相关的对象。服务器为每个用户都生成一个session对象,用于保存该用户的信息,跟踪用户的操作状态。

    常用方法:

    public String getId():获取Session对象编号。

    public void setAttribute(String key,Object obj):将参数Object指定的对象obj添加到Session对象中,并为添加的对象指定一个索引关键字。

    public Object getAttribute(String key):获取Session对象中含有关键字的对象。

    public Boolean isNew():判断是否是一个新的客户。

    4、application对象: javax.servlet.ServletContext

    application 对象可将信息保存在服务器中,直到服务器关闭,与session对象相比,application对象生命周期更长,类似于系统的“全局变量”。但是与Session对象不同的时,所有客户的Application对象都时同一个,即所有客户共享这个内置的Application对象。

    常用方法:

    setAttribute(String key,Object obj):将参数Object指定的对象obj添加到Application对象中,并为添加的对象指定一个索引关键字。

    getAttribute(String key):获取Application对象中含有关键字的对象。

    5、out对象: javax.servlet.jsp.jspWriter

    out 对象用于在Web浏览器内输出信息,并且管理应用服务器上的输出缓冲区。

    常用方法:

    out.print():输出各种类型数据。

    out.newLine():输出一个换行符。

    out.close():关闭流。

    6、pageContext对象: javax.servlet.jsp.PageContext

    pageContext 对象的作用是取得任何范围的参数,通过它可以获取 JSP页面的out、request、reponse、session、application 等对象。

    7、config对象: javax.servlet.ServletConfig

    config 对象的主要作用是取得服务器的配置信息。通过 pageConext对象的 getServletConfig() 方法可以获取一个config对象。当一个Servlet 初始化时,容器把某些信息通过 config对象传递给这个 Servlet。开发者可以在web.xml 文件中为应用程序环境中的Servlet程序和JSP页面提供初始化参数。

    8、exception对象: java.lang.Throwable

    exception 对象的作用是显示异常信息,只有在包含 isErrorPage="true" 的页面中才可以被使用,在一般的JSP页面中使用该对象将无法编译JSP文件。

    展开全文
  • 关于html页面传值的几种方法

    千次阅读 2021-06-28 10:10:28
    分成两个独立的项目部署,因项目是个人项目,客户端展示不考虑使用像Angular、Vue、Native这种前端框架实现,于是全部使用静态页面实现,请求数据用ajax,在开发的过程中,就遇到了页面之间传值的问题。解决方法post...

    问题

    因最近尝试实现客户端与服务端分离,服务端只提供接口,客户端用html+js实现,分成两个独立的项目部署,因项目是个人项目,客户端展示不考虑使用像Angular、Vue、Native这种前端框架实现,于是全部使用静态页面实现,请求数据用ajax,在开发的过程中,就遇到了页面之间传值的问题。

    解决方法

    post提交表单跳转的方式肯定不行了,因服务端并不处理这些请求参数,连到达客户端的机会都没有,此时只能考虑get方式了,因get方式参数在url上,跳转后的页面肯定能获取到。还有一种思路,就是将参数存到一个公共的地方,页面都可以获取到,按这两种思路,总结了如下的解决方法。

    1、get方式,url携带参数

    可以通过window.location.search获取url上的参数。如下面的示例。

    a.html

    1 跳转

    b.html

    1

    2

    3   var a = UrlParam.paramValues("a");

    4   console.log(a);

    5

    getUrlParam.js

    1 UrlParam = function() { // url参数

    2   var data, index;

    3   (function init() {

    4     data = []; //值,如[["1","2"],["zhangsan"],["lisi"]]

    5     index = {}; //键:索引,如{a:0,b:1,c:2}

    6     var u = window.location.search.substr(1);

    7     if (u != '') {

    8       var params = decodeURIComponent(u).split('&');

    9       for (var i = 0, len = params.length; i < len; i++) {

    10         if (params[i] != '') {

    11           var p = params[i].split("=");

    12           if (p.length == 1 || (p.length == 2 && p[1] == '')) {// p | p= | =

    13             data.push(['']);

    14             index[p[0]] = data.length - 1;

    15           } else if (typeof(p[0]) == 'undefined' || p[0] == '') { // =c 舍弃

    16             continue;

    17           } else if (typeof(index[p[0]]) == 'undefined') { // c=aaa

    18             data.push([p[1]]);

    19             index[p[0]] = data.length - 1;

    20           } else {// c=aaa

    21             data[index[p[0]]].push(p[1]);

    22           }

    23         }

    24       }

    25     }

    26   })();

    27   return {

    28     // 获得参数,类似request.getParameter()

    29     param : function(o) { // o: 参数名或者参数次序

    30       try {

    31         return (typeof(o) == 'number' ? data[o][0] : data[index[o]][0]);

    32       } catch (e) {

    33       }

    34     },

    35     //获得参数组, 类似request.getParameterValues()

    36     paramValues : function(o) { // o: 参数名或者参数次序

    37       try {

    38         return (typeof(o) == 'number' ? data[o] : data[index[o]]);

    39       } catch (e) {}

    40     },

    41     //是否含有paramName参数

    42     hasParam : function(paramName) {

    43       return typeof(paramName) == 'string' ? typeof(index[paramName]) != 'undefined' : false;

    44     },

    45     // 获得参数Map ,类似request.getParameterMap()

    46     paramMap : function() {

    47       var map = {};

    48       try {

    49         for (var p in index) { map[p] = data[index[p]]; }

    50       } catch (e) {}

    51       return map;

    52     }

    53   }

    54 }();

    此处代码参照:

    2、通过cookie,传递

    cookie能够存储少量数据到客户端的磁盘中,特定的网页之间是可以共享cookie中的数据。

    a.html

    1

    2

    3

    4   $.cookie("a","12");

    5

    b.html

    1

    2

    3

    4   var param = $.cookie("a");

    5   console.log(param);

    6

    此处使用了jquery.cookie.js,具体用法可参照此篇文章:

    3、window.open和window.opener之间传值

    window.open可以打开一个新的页面,在新的页面中可以通过window.opener获取父页面的窗口对象,从而可以获取父窗口中的参数。

    a.html

    1 打开新的页面

    2

    3   $('#open').click(function () {

    4     window.open('./b.html')

    5   })

    6

    b.html

    1

    2   var content = window.opener.document.getElementById("open").innerHTML;

    3   alert(content);

    4

    4、h5技术,window.localStorage存储数据

    在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。此方法类似cookie,将数据存在一个公共的地方,实现页面之间传值。

    a.html

    1

    2

    3

    4   function set() {

    5     //由于是一个新的技术,你可以通过下面的代码检测你的浏览器是否支持

    6     if (window.localStorage) {

    7     //存储变量的值

    8       localStorage.name = document.all.username.value;

    9       location.href = './b.html';

    10     } else {

    11       alert("NOT SUPPORT");

    12     }

    13   }

    14

    b.html

    1

    2   var value = localStorage["name"];

    3   alert(value);

    4

    总结

    对于不同的解决方法,都有优缺点

    1、url携带参数

    优点:取值方便,可以跨域,利于页面分享,没有环境限制。

    缺点:url携带参数值的长度有限制。

    2、cookie方式

    优点:可以在同源内的的任意网页中访问,存储数据的周期可以自由设置。

    缺点:有长度限制。

    3、设置窗口之间的父子关联关系

    优点:取值方便.只要window.opener指向父窗口,就可以访问所有对象.不仅可以访问值,还可以访问父窗口的方法.值长度无限制。

    缺点:两窗口要存在着关系.就是利用window.open打开的窗口。不能跨域。

    4、h5技术,window.localStorage存储数据

    优点:储存空间大,有5M存储空间。

    缺点:不是所有浏览器都支持。

    个人倾向第一种方式,主要是自己做的网页可以分享,在任何的地方都可以打开,其他的方式都有环境的要求。如果是做大型项目,架构是实现客户端与服务端的分离,建议还是引入客户端框架,框架实现了路由、参数的传递、以及安全问题,可以大大的提高开发效率。

    来源:https://www.cnblogs.com/crazyWang/p/12073472.html

    展开全文
  • uniapp页面之间传值

    千次阅读 2020-07-15 11:07:04
    页面传值 如果数据仅在跳转和被跳转页面中传递, 可以在跳转时传递数据. 如果数据需要多个页面使用, 可以采用本地存储处理数据 一. uni.navigateTO url有长度限制, 太长的字符串会传递失败 这里列举一个例子, ...

    页面传值

    如果数据仅在跳转和被跳转页面中传递, 可以在跳转时传递数据. 如果数据需要多个页面使用, 可以采用本地存储处理数据

    一. uni.navigateTO

    url有长度限制, 太长的字符串会传递失败

    这里列举一个例子, 其他几个路由跳转传递参数的方法和这个相同

    //从此页面跳转到test页面并传递两个参数
    uni.navigateTo({
        url:'test?id=123&name=张三'
    })
    
    //在test页面接收参数
    export default {
        onLoad: function(e){
            console.log(e.id); //123
            console.log(e.name); //张三
        }
    }
    
    

    二. navigator

    <navigator :url="/pages/test/test?id=1"></navigator>
    
    //在test.vue页面接收参数
    onLoad:function(e){
        console.log(e.id) //1
    }
    
    展开全文
  • 1.QuerySting在页面间传递值 这样的方法的写法:在要传递值的页面,Response.Redirect(url),值包括在在url中。接收值得页面,Request.... 这是使用起来非常easy的一种方式。可是它不是非常安全,由于值会...
  • ASP.NET页面之间传递值的几种方式

    千次阅读 2021-06-22 13:44:37
     QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能...
  • C# MVC 向页面传值方式

    2022-01-22 13:37:40
    本文列举以下三种,主要传递一些简单的数据,集合类型数据最好用Model对象或者JSON串 ViewBag ViewData TempData ViewBag: public ActionResult Index() { User user = Session["User"] as User; if (user !=...
  • 组件传值的方法: 一、父组件向子组件传递数据(props) 第1:父组件需引入子组件 importnav2Childrenfrom'./nav2Children.vue' importzjOnefrom'./public/zjOne.vue' 组件引入:components: {'nav2C': nav2...
  • 本文介绍了.NET页面的几种传值方式, 是.NET程序员从入门到精通必经之路!
  • 摘要 不同页面之间传值在web工作中经常用到,本文列举了3种常见和实用的方法  接触PHP也有几个月了,本文总结一下这段日子中,在编程过程里常用的3种不同页面传值方法,希望可以给大家参考。有什么意见也希望...
  • d. Cookie 传值 e. Application 传值 f. PreviosPage g. Server.Transfer 和 Response.Redirect 的区别:Server.Transfer 是服务器内部的转接,浏览器不知晓; Response.Redirect 是有浏览器参与的,所以在地址栏中...
  • QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。...
  • 比如如果源页面和目的页面不在同一个虚拟目录或其子目录下,那么使用相对路径的图片、超链接都会导致错误的指向。   六、缓存 1.整页缓存:优点:实现简单,缺点:消耗服务器内存 2.片段缓存:优点:节省...
  • 页面传值是我们经常遇到的问题,这个各种页面传值方式。 一、QueryString: 传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。 优点:使用...
  • ASP.NET页面之间传递值的几种方式 页面传值是学习asp.net初期都会面临的一个问题,总的来说有页面传值、存储对象传值、ajax、类、model、表单等。但是一般来说,常用的较简单有QueryString,Session,Cookies,...
  • 1. 这是最简单的传值方式,但缺点是传的值会显示在浏览器的地址栏中且不能传递对象,只适用于传递简单的且安全性要求不高的整数值,例: 新建一个WEB项目,添加一个页面命名为Test1,在页面中添加一个Button命名...
  • vue-router 传值的三种方式

    千次阅读 2021-06-15 21:35:40
    上次被问到路由之间如何传值,我一整个蒙住,但其实在项目中也有用到过,所以今天把这些方法整理出来,以后便于翻阅 1. query 传值 在主页面中写一个按钮,绑定方法 <button @click="sentMesg()">兄弟页面<...
  • 通过路由传参的方法进行参数传递。 使用this.$router.push传参,this.$route....A页面: this.$router.push({ //path设置传参的路由 path:'/pages/tabBar/my/my', //params设置要传输的参数 params:{ I..
  • 在 Vue.js 应用程序开发过程中常常需要处理组件传值的问题,下面详细列举几种常见的组件传值方法。 1. props 父组件代码: <template> <child-component title="子组件标题"></child-component&...
  • 不同页面之间传值在web工作中经常用到,本文列举了3种常见和实用的方法接触PHP也有几个月了,本文总结一下这段日子中,在编程过程里常用的3种不同页面传值方法,希望可以给大家参考。有什么意见也希望大家一起讨论。...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,375
精华内容 950
关键字:

列举页面之间的传值方式