提问者:小点点

如何在javascript中不同html页面之间传递变量值


我想把所选列表项的值传递给另一个页面,意思是如果我从列表中选择abc,那么这个abc值传递给下一个html表单,它应该只打开那个配置文件页面。有没有什么方法可以在不同的html页面中使用这个变量。

$('.ui-li-icon li').click(function() {
    var index = $(this).index();
    text = $(this).text();
    alert('Index is: ' + index + ' and text is ' + text);

我想把上面的文本值传递给我的profile.html,它有javascript函数profile()。所以我想在函数调用中传递这个文本,比如profile(text);我试着在函数调用上面声明了var文本,但是仍然不工作。请告诉我是否还有其他方法。


共3个答案

匿名用户

您可以将该值作为url片段传递。

在on click函数中,打开'/profile.html#'+text

在profile.html中获取url片段。

示例代码:

导航到profile.html

window.location.href = '<path to profile.html>' + '#' + text;

在profile()中,要获取参数,请使用

var text = window.location.hash.substring(1)

匿名用户

做这件事有不同的方法

在Cookie中存储所选项目

 // Store it in the cookies
 document.cookie="selected=john"

// Get it in the profile.html
var cookie = document.cookie;

将所选项目存储在本地存储器中

// Store it in the local storage
localStorage.setItem('selected', 'john');

// Get it from the local storage
var selected = localStorage.getItem('selected');

使用查询参数(推荐)

您可以在profile.html?selected=john的查询参数中传递选定的项。 我推荐这个方法。 您可以按位置读取选定项目。搜索

匿名用户

HTML/HTTP是无状态的,这意味着,您在上一个页面上所做的/看到的,与当前页面完全断开。

1)-简单使用前端存储,它装备任何浏览器(Cookie,会话存储,本地存储)和把价值放在一个页面和获取价值在其他。

考虑到:

Cookie将数据保存到您确定的时间,

会话存储保存数据,直到浏览器默认选项卡关闭

本地存储保存数据直到浏览器完全关闭,并在选项卡(页面)之间共享这些数据。它存储的数据没有截止日期,只通过JavaScript清除,或者清除浏览器缓存/本地存储的数据--与cookie过期不同。

2)-第二种方法将其保存为请求参数-当元素通过Ajax render函数生成时,向元素添加属性,一个链接,另一个链接

->; 然后点击这个元素构造“URL/? action=GetAll(&S 元素=产品(&P; id=1212“,在第二页which will be gone操作中,您可以解析此URL并使用适当的参数调用适当的Ajax。

也许这些额外的信息也会有所帮助

如何将javascript对象从一个页面传递到另一个页面

有关“客户端存储解决方案”的其他信息

localStorage,sessionStorage,session和cookie之间有什么区别?