利用session存值,跳转刷新页面后回显

浏览器数据存储 Local Storage, Session Storage, IndexedDB ,WebSQL, Cookies 浏览器存储方式这么多,可我以前却独宠Local Storage一人,但是了解到IndexedDB的时候,我觉得我要变心了,我果然不是一个专一的人????(?)参考其它资料对几种数据存储的分析,我自己给自己做个总结。 浏览器的存储方式有这些: 首先结合网上资料对几种存储方式做个分析。 Local Storage localStorage(本地存储)是HTML5的的WebStorage提供... 阅读详情

提交页面,中途选择选项时跳转了页面,返回提交页面时刷新了,以前的数据消失,解决方法:利用session存储数据,返回时再取出回显


思路:一、点击跳转时利用session把数据存起来
二、跳转页面再存session回提交页(可以略过,我的是因为新页面需要传数据回来,才在新页面也存了一个session)
三、返回页面,sessionStorage.getItem(key)获取之前存储的数据再放回页面中

实现:
一、点击跳转时利用session把数据存起来
1.先保存需要存储的数据

var model = {};//var一个空对象,里面用来存所有数据
model.Pics = []//对象里的数组

2.存值
我的是在跳转的方法里获取值,跳转时存session

 $(".xzzc_select").click(function () {
            window.location.href = "/FeedBack/ChoosePosition";
            //session
            model.ComplainLables = $('.ts-item-w').children(".active").text()//获取的所需的数据
            model.CommentType = $('#commentType').children(".active").attr('value')
            //存值,session只能存字符串,需要转换
            sessionStorage.setItem("key", JSON.stringify(model))
        })

二、跳转页面再存跳转页面的session回提交页
这是跳转的页面

 function sureFunc() {
        //获取选中的
        var orgId = $("input:radio:checked").attr("orgId");
        //存session 需要返回给提交页面的数据
       	sessionStorage.setItem("orgId", orgId);
        window.history.go(-1);
    }

三、返回页面,获取存储的数据再放回页面中
跳转回来之后,在提交的页面
param和model需要注意,param是传给后台的值,model是存储的值。

 $(function () {
        //获取选项页面穿过来的session
        var cpId = sessionStorage.getItem("orgId");
        if (cpId) { param.MPlatId = cpId }//param.MPlatId是需要传给后台的
        //获取之前存的session,存的时候转换过,现在用JSON.parse()方法转换回来,否则打印就时[object object]
        var subModel = JSON.parse(sessionStorage.getItem("key"));
        if (subModel) {//如果有值
            console.log(subModel);
            //这里重新绑定选中的数据到界面,
            //如果model.ComplainLable有值,就放回
            if (subModel.ComplainLables) { $('.xzzc_select .val').text(subModel.ComplainLables)}
            //
            //图片放回例子
            if (subModel.Pics) {
            //param是提交所需要的数据,重新回来之后为空了,重新赋值给param
                param.Pics = subModel.Pics
                for (var a = 0; a < subModel.Pics.length; a++) {
                    var Nhtml = "";
                    Nhtml += '<span class="fileBox pull-left" name="fileBox" style="margin-right:10px;">';
                    //这里给x删除,另外添加了一个自定义属性url,和上传的图片的url一样,为了删除时同时删除model.Pics里面的
                    Nhtml += '<img class="filedel" οnclick="fileRemove(this)" src="/images/img_closed2_nor.png" url="' + subModel.Pics[a] + '">';
                    Nhtml += '<img src="' + subModel.Pics[a] + '" class="fileimg" />';
                    Nhtml += '</span>';
                    $(".dimg-wrap").prepend(Nhtml);
                }
            }
     	}

图片删除功能:因为是上传成功一张,就push一张进param.Pics,如果删除不仅要从页面删除图片,也要从param.Pics的数组里删除,有点麻烦

  • 注意 我的model.Pics,直接是param.Pics=model.Pics这样赋值的
//小x删除的点击事件
    function fileRemove(obj) {
        var url = $(obj).attr("url");//获取点击删除的url属性值
        var deleteIndex = getDeleteIndex(url);//传参调用方法,返回所要删除的下标
        debugger;
        if (deleteIndex > -1) {
        //这是为什么删的是param里面的值,因为存图片的时候 model的值我是直接param.Pics=model.Pics的
        //删了param.Pics里面的值,model.Pics也会被删,结果一样的
            param.Pics.splice(deleteIndex, 1)//删除
        }
        $(obj).parents("span.fileBox[name=fileBox]").remove();//从页面删除图片
    }
    function getDeleteIndex(url) {
        var index = -1;
        param.Pics.forEach(function (v, cindex) {
        //v是图片url,cindex是下标
        //如果点击删除的url和param.Pics里某个图片的url一样
            if (v == url) {
                index = cindex;
            }
        });
        return index;//返回下标
    }

大概就是这样。有点乱
可以先写不需要跳转刷新的情况下数据提交,提交成功后 再来写跳转刷新后重新获取值的提交
提交传数据给后台 param和model之间:
param的有些值是在别的方法里赋值的,刷新之后,这个值就没有了,提交的这个值就是underfind,
那就可以var subModel = JSON.parse(sessionStorage.getItem("key"));
if (subModel){ param.Pics = subModel.Pics }在有session的情况下,把session存的值给param.

润乾报表编辑框参数保存与回显:LocalStorage与后端数据库混合方案详解 在Web应用开发中,状态管理与数据持久化是提升用户体验的核心技术。其原理在于通过前端或后端存储机制,记录用户操作状态,实现数据的跨会话保留。这项技术的价值在于减少用户重复输入,提升操作效率,尤其在需要频繁交互的企业级应用(如报表系统、数据查询平台)中至关重要。应用场景广泛,包括表单自动填充、用户偏好设置、以及复杂的查询条件记忆等。本文聚焦于润乾报表这一具体工具,深入探讨其编辑框参数如何实现可靠的保存与回显。通过分析LocalStorage、SessionStorage、后端数据库等多种技术方案的优缺点,并结 阅读详情

相关推荐

润乾报表参数模板编辑框参数保存与回显完整实现指南

在Web应用开发中,状态持久化是提升用户体验的核心技术之一,它确保用户操作状态在不同会话间得以保留。其原理是通过前端或后端存储机制,将用户交互数据(如表单输入)进行保存和恢复。这项技术的价值在于提供连贯、可预期的操作体验,减少用户重复劳动,广泛应用于数据填报、报表查询、管理后台等需要记忆用户偏好的场景。本文聚焦于企业级报表工具润乾报表,深入探讨其参数模板中编辑框控件的状态管理难题,提供了从前端本地存储到后端数据库持久化的多层级解决方案,并详细解析了如何实现可靠的参数“保存”与“回显”功能,以解决用户刷新页面

weixin_30617797的博客 296

页面跳转,页面缓存

页面跳转,缓存页面

qq_51586463的博客 1693

DVWA靶场SQL注入实战:从环境搭建到手工与自动化漏洞利用

SQL注入作为Web安全领域的经典漏洞,其核心原理在于应用程序未对用户输入进行充分验证,导致攻击者能够将恶意SQL代码注入到后端数据库查询中。这种漏洞的产生源于开发过程中未能严格区分数据与代码,使得用户输入被直接拼接到SQL语句并执行。理解SQL注入的技术价值在于,它不仅是评估Web应用安全性的关键指标,更是学习安全防御的切入点。通过搭建DVWA(Damn Vulnerable Web Application)这一专为安全学习设计的漏洞靶场,学习者可以在一个受控环境中,从信息探测、注入点确认到使用联合查询(

weixin_30698527的博客 349

跳转到另一个网站之后,如何跳转回原来的站点并保留原来的信息

环境 百度云应用、原生PHP、ThinkPHP 步骤 1、维护一个不能再维护的老网站,比较实际的方法是“新功能另起炉灶,搭建新网站,让它们看起来像是同一个网站”。然而随之带来的问题是,新老网站的切换。我正在添加功能的一个老网站每个页面都设置了以SESSION的某些值为标记的登陆检查,用U...

chenning361516213的博客 1895

利用DNSLog技术精准验证无回显SSRF漏洞实战指南

服务器端请求伪造(SSRF)是一种允许攻击者诱导服务器向任意地址发起请求的漏洞,其核心原理在于应用程序未对用户输入的URL进行充分校验,直接用于发起网络请求。在安全测试中,无回显SSRF因无法直接获取响应而难以验证,此时需要借助外带数据(OOB)技术。DNSLog技术巧妙地利用了DNS查询这一互联网基础协议,通过监控对特定子域名的解析请求,间接证明漏洞触发。该技术价值在于穿透性强,能有效应对防火墙拦截或应用层无响应等场景,广泛应用于渗透测试、漏洞挖掘等安全评估环节。本文以DNSLog.cn平台为例,结合SS

weixin_30621959的博客 387

Virtuoso ADE Explorer实战技巧:从基础操作到高级仿真

本文深入解析了Virtuoso ADE Explorer在模拟电路仿真中的核心价值与实战技巧。作为Cadence平台的专业工具,它专为高效、系统化的设计空间探索而生,能大幅提升PVT验证、参数扫描和蒙特卡洛分析的效率。文章从基础界面操作、并行仿真管理,到高级的参数扫描、数据报告生成及蒙特卡洛结果深度剖析,提供了全面的避坑指南与工作流优化建议,帮助工程师从重复劳动中解放,专注于电路设计与性能优化。

ios99的博客 901

用户信息存放在session.setAttribute(“userName“, “xiaoMing“)中,但在下一个页面刷新后就没session值了

用户xiaoMing登录成功后,将用户名放在session中,再跳转至个人信息页,刷新该页面后用户信息的 session 值消失了。

weixin_60808029的博客 2390

MTK手机传感器驱动开发避坑指南:从SCP代码大小限制到Overlay加载流程详解

本文详细解析了MTK平台传感器驱动开发中的常见问题,包括SCP代码大小限制、Overlay加载流程及客制化传感器集成。通过实战案例和优化策略,帮助开发者高效解决MTK传感器驱动开发中的技术难题,提升开发效率。

weixin_42522374的博客 402

利用html sessionStorge 来保存局部页面在刷新后回显,保留

在一个页面里面,有个局部页面记录这当前session的任务记录,之前用的cookie来进行保存,发现cookie能保存的大小太小,于是用session来保存, 代码是想实现在刷新或离开到其他页面load时将页面中的局部内容保留,使之与刷新前一致,不丢失 如下: $(function () { if (!window.sessionStorage.getItem("myhtml"))

云中不知人的专栏 3148

ROS-订阅与处理激光雷达scan话题

激光雷达通常有四个性能衡量指标:测距分辨率、扫描频率(有时也用扫描周期)、角度分辨率及可视范围。测距分辨率衡量在一个给定的距离下测距的精确程度,通常与距离真实值相差在5-20mm;扫描频率衡量激光雷达完成一次完整扫描的快慢,通常在10Hz及以上;角度分辨率直接决定激光雷达一次完整扫描能返回多少个样本点;可视范围指激光雷达完整扫描的广角,可视范围之外即为盲区。

weixin_42438635的博客 4478

R语言dlnm包避坑指南:手把手教你配置交叉基矩阵(附温度分层与滞后多项式设置)

本文详细介绍了R语言dlnm包在配置交叉基矩阵时的实用技巧与避坑指南,特别针对温度分层与滞后多项式设置提供了具体参数配置建议。通过解析`crossbasis()`函数的核心参数、温度分析的分层策略以及不同基函数的适用场景,帮助研究者高效构建分布滞后非线性模型,避免常见错误并优化模型性能。

weixin_34094282的博客 402

vue保存页面的值_Vue 页面状态保持页面间数据传输的一种方法(推荐)

如果大家觉得有用,更多的模块请 点击查看vue router给我们提供了两种页面间传递参数的方式:// 命名的路由router.push({ name: 'user', params: { userId: 123 }})// 带查询参数,变成 /register?plan=privaterouter.push({ path: 'register', query: { plan: 'private'...

weixin_42665725的博客 2827

sdc时钟约束2——多驱动时钟

sdc 多驱动时钟 master_clock

qq_40411444的博客 5529

Session惹得祸——前台修改数据后不能回显,必须要重新登录才可显示修改后的数据

今天做项目,做个人中心的信息修改功能的时候遇到一个bug:每一次成功修改数据后数据库中的数据被成功修改,但是该页面不会回显修改后的数据,一直刷新甚至清除浏览器缓存也没有用。只有在重新登录系统的时候,才能看见修改后的数据。 后来发现了原因:我前台的数据有部分是用session获取到的,而我更新数据之后,并没有更新session,所以session还是原来的session,因此数据不会变动,在每次修...

Searchin_R的博客 2195

GEOPHYSICS 投稿避坑指南:从格式规范到双盲评审的实战解析

本文详细解析了GEOPHYSICS期刊投稿的全流程避坑指南,从格式规范、数据声明到双盲评审的实战策略。特别强调了数学公式排版、图表制作标准以及投稿系统的隐藏关卡,帮助作者避免常见错误,提升投稿成功率。

weixin_30606461的博客 236

使用Microsoft Print to PDF进行编程:创建PDF文件的简单方法

Microsoft Print to PDF是一种内置于Windows操作系统中的功能,它允许我们通过打印操作将任何可打印的内容保存为PDF文件。然后,我们使用Microsoft Print to PDF打印机进行打印操作,并将输出文件保存为指定的PDF文件。使用Microsoft Print to PDF功能是一种方便且简单的方法来创建PDF文件,无论是在个人使用还是在企业开发中,它都可以提供良好的支持和灵活性。请注意,如果你使用的是其他编程语言,你可以根据相应的打印机接口或库来实现类似的功能。

TechSavant的博客 1635

JSP登录跳转核心:jsp:forward与request作用域实战解析

在Java Web开发中,页面跳转与请求流转是构建动态Web应用的基础能力。服务端跳转作为区别于客户端重定向的关键机制,由容器内部完成请求转发,全程仅发起一次HTTP请求,并保持request对象不变。依托这一原理,开发者可在登录校验场景中利用请求作用域在页面间安全传递用户信息与错误提示,实现真正的“先处理、后展示”流程。同时,透彻理解转发与重定向的差异,有助于掌握状态保持、参数传递及编码处理等高频实践问题,并为后续学习Servlet、Spring MVC乃至安全框架奠定坚实根基。本文将结合经典认证登录项目

weixin_28700593的博客 254

GPU 资源池化云平台解决方案​

定义与特点Kubernetes是一个开源的容器编排和管理平台,通过提供自动化和声明式的方式来部署、扩展、维护和运行应用程序。它支持跨多个主机和集群部署容器,确保应用程序的高可用性和可扩展性。Kubernetes提供了丰富的功能和插件,允许用户根据自己的需求进行定制和扩展。架构与组件控制平面(Control Plane):负责集群的决策(如调度)和集群状态的检测与响应。

ZhangJiqun&191cm&85kg 1162

java ajax window.location.href 不跳转_机械狗的Java之路——第四篇

"Why it still can't run successfully ?!"这么快就到第四篇日志了......送上知识清单:Day 317月7日,第31天课程内容:1. Servlet总结:发展史及生命周期(创建,工作,销毁),url-pattern配置(完全路径,目录,扩展名)2. HTTP协议:作用,特点(先请求后响应),组成(请求行头体,响应行头体),服务器缓存清理3. XML...

weixin_29007135的博客 215

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

javaEE009.02 使用El+JSTL优化Jsp表达式、提取welcome.jsp(6个页面)_项目第三阶段4完结(包含、使用request域的缺陷、getParameter 对应 EL … )

系列文章目录 文章目录系列文章目录前言一、使用El+JSTL优化Jsp表达式的前奏使用request域的缺陷进入购物车之前和注册之前需要先判断用户有没有登录二、使用El+JSTL优化Jsp表达式、提取welcome.jsp(6个页面)_项目第三阶段完结总结 前言 前面一篇我们讲完,接着优化项目 一、使用El+JSTL优化Jsp表达式的前奏 使用request域的缺陷 这里我们用session的原因 是因为重定向所以我们用session吗? 如果我们改成转发能不能用request呢? 我们具体问题具体分析

小良的博客 293

DVWA靶场CSRF攻防实战:从漏洞利用到Token防御详解

跨站请求伪造(CSRF)是一种常见的Web安全漏洞,其原理是攻击者利用用户已登录的会话凭证,伪造请求执行非授权操作。该漏洞的核心在于服务器仅依赖Cookie等凭证进行身份验证,而未校验请求的真实来源。在Web安全领域,CSRF与XSS常被并列讨论,因其都能导致严重的业务逻辑危害,如账户篡改、资金转移等。有效的防御通常需结合CSRF Token、同源策略及二次验证等多层机制。本文以DVWA靶场为演练环境,通过低、中、高三个安全等级的实战,深入剖析CSRF的利用手法与防护逻辑,涵盖从基础的GET/POST攻击构

weixin_33738982的博客 332

文件包含漏洞实战:从CTF赛题看PHP特性与LFI2RCE利用链

文件包含漏洞是Web安全中的经典漏洞类型,其核心原理在于程序未对用户可控的文件路径进行严格校验,导致恶意文件被包含执行。在PHP环境中,include、require等函数的不当使用是主要成因。该漏洞的技术价值在于可能实现本地文件读取甚至远程代码执行,常被用于权限提升和信息窃取。典型的应用场景包括CMS插件包含、配置文件读取等。本文以一道CTF赛题为案例,深入探讨了如何通过PHP临时文件机制和日志污染技术,在存在路径穿越符过滤和协议限制的情况下,实现从本地文件包含到远程代码执行的完整利用链,其中涉及PHP文

weixin_30681615的博客 358

JSP登录模块中的jsp:forward跳转:原理、实践与避坑

在Java Web开发中,页面跳转与数据传递是构建动态应用的核心技能。请求转发作为服务器内部行为,能在一次请求中完成资源交接,同时保留request作用域内的数据;而重定向则触发浏览器二次请求。基于JSP的jsp:forward动作标签正是实现服务器转发的一种经典方式,尤其在登录模块中,它被广泛用于校验成功后的页面流转与错误信息回显。通过jsp:forward配合jsp:param,可以轻松携带参数;结合session作用域,还能建立真正的登录状态。理解其底层原理与适用场景,有助于开发者避开重复提交、路径错

weixin_34026276的博客 364

技术演进中的开发沉思-183 JSP :数据共享

本文分享了企业级Web应用中两个常见需求的处理经验:数据共享和文档生成。在数据共享方面,分析了JSP的四种作用域(pageContext、request、session、application)的特点和使用场景,强调"用最小作用域满足需求"的原则,并总结了常见陷阱及解决方法。在文档生成方面,比较了HTML伪装Excel和POI生成真Excel两种方式,详细介绍了POI生成Excel的代码实现,并讨论了大数据量处理和样式优化等实际问题。文章通过实战案例展示了从数据库查询到Excel导出的完

你的天空阅读专栏 819
上一篇: 倒计时功能
下一篇: 鼠标滚动事件,鼠标滚动一下,屏幕滑动一屏
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值