2013-04-18 112 views
0

我使用这个为Phonegap所以,我更喜欢在JavaScript解决方案。如何将数组从一个html传递到另一个html页面?

我发现许多解决方案使用PHP。这就是为什么我想清楚。

嗯,我得到一个数组,其数值来自数据库。我想将这个数组传递给第二个HTML页面。

传递变量正在使用下面的代码...

编辑:

window.location.href="1stpage.html"?var1=&value; 

希望,我对与编码。

请引导我,如果我错了。

参考答案提出的更改

胡里奥·梅卡·汉森先生,我试过实现相同的

window.location.href='1st page.html?var1=5&var2=6'; 

,并试图通过第二页上打印的值验证它...

console.log("value1: "+var1 +"value2: "+var2); 

唉!,我得到这个错误...

E/Web Console(12476): ReferenceError: Can't find variable: var1 at file:///android_asset/www/1st%20page.html?var1=5&var2=6:17 
+0

你的代码是无效的 - JS是不同于HTML,你不包装他们之间'<' and '>'迹象;) – Terry

+0

oops,Sorry.i可能会被更正! – user

+0

这是一种不寻常的情况,因为您可能冒用户能够更改数据的风险。通常你会重新从页面之间的数据库中检索数据。 – NibblyPig

回答

1

如果代码链接到图像,它会更是这样的:

<img src="images/img1.png" alt="" onclick="window.location.href='1stpage.html?var1=5&var2=6';"> 

修改它来满足您的需求:P

+0

Julio Meca Hansen先生,谢谢。在第一个注释中,我正在使用映射,在第二个注释上点击....我需要传递** ARRAY **而不是变量。 – user

+0

第二页应该用php,而不是html,如果他/她想用$ _GET来取值的话。 –

+0

无所谓......我写了'var1 = 5',但你可以很容易地写'a [sample1] = 5'等等。理想的做法是使用'http_build_query()'函数自动构建URL参数,但如果使用纯HTML,则需要手工指定每个参数,无论是数组还是简单值。 –

1

如果你不想使用JavaScript:

<a href="1stpage.html?var1=5&var2=6"> 
    <img src="images/img1.png" alt="" /> 
</a> 
+0

lolcat111,我不想要图像的SRC .....我只需要从1 HTML传递数组值到另一个HTML页面。 – user

+0

但用户必须点击一个链接才能进入下一页...图像只是装饰,您也可以只将文字放在链接中。 –

1

我假设你正在使用jquery,但原则是一样的普通老js - 使用cookie例如

how to store an array in jquery cookie?

这实际上存储阵列,而不是在其他的答案描述的变量的负载。

+0

matpol,我没有使用JQUERY ...而是我正在使用JavaScript。 – user

+1

你读过的答案原则是相同的普通旧javascript'设置一个cookie'(http://www.w3schools.com/js/js_cookies.asp) - 不要标记我参考w3schools,但它是第一件事是谷歌! – matpol

1

如果这个数组只会被JavaScript使用,那么不要使用cookie。 Cookies用于存储服务器需要访问的信息,并且无所事事地设置它们会大大增加您的网络使用量!

改为使用JavaScript的localStorage界面。它是由所有现代浏览器都支持(IE7及以下不计为“现代”,尤其是与实际的Windows更新强迫你更新),并且是真正易于使用:

var someArray = [1,2,3,4]; 
if(!window.localStorage) alert("Sorry, you're using an ancient browser"); 
else { 
    localStorage.myArray = JSON.stringify(someArray); 
} 

后来,你可以检索它:JSON.parse(localStorage.myArray)

我希望这是你正在努力实现的。如果没有,请澄清你的问题一些;)

+0

Kolink先生,请允许我告诉我们使用Window.local存储的概念,以及为什么我们要使用** JSON.stringify(someArray); ** ....当我们使用JSON在线... AM我正确吗? – user

+1

'localStorage'只能存储字符串,并且不会自动串行化值。 'JSON'是一种将JS对象转换为字符串值的方法。通常它用于在线传递数据,但不一定。 –

+0

Kolink,现在我应该如何将它连接到下一个HTML页面? – user

相关问题