吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 149|回复: 5
收起左侧

[经验求助] JSP localStorage

[复制链接]
据守 发表于 2024-5-7 16:02
50吾爱币
本帖最后由 据守 于 2024-5-7 17:10 编辑

自己用jsp写点小脚本,遇到的问题,求助
在A页面写了 for 循环,每次循环会跳转到B页面:
[JavaScript] 纯文本查看 复制代码
window.open(dd[i],"_self");

在B页面处理完后,自动返回到A页面的时候,会重新进入循环,即 i 的值又初始化,导致循环走不下去。
用新标签页打开能行:
[JavaScript] 纯文本查看 复制代码
window.open(dd[i],"_blank");

但是几十个B页面处理完后,自动返回到A页面的时候,又会再次运行脚本。
导致页面越开越多,最后卡死。
不会用jsp读写本地文件,就想用localStorage试试:
A页面:
[JavaScript] 纯文本查看 复制代码
var abc;
localStorage.setItem(abc, "Hello World");

B页面:
[JavaScript] 纯文本查看 复制代码
var data = localStorage.getItem(abc);
alert(data);

先运行A,再运行B,能弹出内容。
但是刷新B页面后再运行就会报错未定义:abc is not defined
以下为源码:
[Asm] 纯文本查看 复制代码
var mytable = document.getElementsByClassName("tableSet");    // 获取表格
var myrows = mytable[0].getElementsByTagName("tr");                // 获取行
var dd = new Array();                                                                     
for(var i=0;i<49;i++){   
var mycells = myrows[i+1].getElementsByTagName("td");         // 获取第i+1行的单元格   
var mytext = mycells[5].getElementsByTagName("a");               // 获取该行第6个单元格   
var cc = mytext[0];    
dd[i] = cc.attributes["href"].nodeValue;    // 获取 href 链接   
window.open(dd[i],"_self");      // 本页面跳转
}


最佳答案

查看完整内容

离谱了,回复的怎么变成了这样。 A页面是这样的,第一个参数是字符串(键名),你写的var abc并把abc传递给他,你其实是传递的是undefined,改为字符串即可如下所示。 同理B页面获取也需要使用字符串"abc"。 你这里报错是因为 abc是变量名,不是字符串,你也没有var abc声明这个变量,所以报错。 JavaScript基础有点薄弱

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

kittylang 发表于 2024-5-7 16:02
离谱了,回复的怎么变成了这样。

A页面是这样的,第一个参数是字符串(键名),你写的var abc并把abc传递给他,你其实是传递的是undefined,改为字符串即可如下所示。

[JavaScript] 纯文本查看 复制代码
localStorage.setItem("abc", "Tom");


同理B页面获取也需要使用字符串"abc"。
你这里报错是因为 abc是变量名,不是字符串,你也没有var abc声明这个变量,所以报错。

JavaScript基础有点薄弱
kittylang 发表于 2024-5-7 19:33
建议看看https://developer.mozilla.org/zh ... Window/localStorage

A页面应该是[color=var(--text-primary)]localStorage[color=var(--code-token-punctuation)].[color=var(--code-token-attribute-name)]setItem[color=var(--code-token-punctuation)]("abc[color=var(--code-token-attribute-value)]"[color=var(--code-token-punctuation)],[color=var(--text-primary)] [color=var(--code-token-attribute-value)]"Tom"[color=var(--code-token-punctuation)])[color=var(--code-token-punctuation)];
 楼主| 据守 发表于 2024-5-7 21:44
kittylang 发表于 2024-5-7 16:02
离谱了,回复的怎么变成了这样。

A页面是这样的,第一个参数是字符串(键名),你写的var abc并把abc传递 ...

是有点薄弱,JavaScript才刚起步,写的第一个脚本,弄的自动填写评语的。能不能再帮忙看看
[JavaScript] 纯文本查看 复制代码
localStorage.setItem("abc", "123");

怎么用123的数值?
kittylang 发表于 2024-5-7 22:17
据守 发表于 2024-5-7 21:44
是有点薄弱,JavaScript才刚起步,写的第一个脚本,弄的自动填写评语的。能不能再帮忙看看
[] 纯文本查看 复制代码
kittylang 发表于 2024-5-7 22:18
[JavaScript] 纯文本查看 复制代码
localStorage.getItem('abc')


见鬼了,直接回复的东西总出问题,
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.