假设网页只有一个超链接。我没有使用任何形式。如果用户单击该链接。该页面将被重定向到另一个带有JSON对象的页面。我必须从js脚本文件中获取该对象。如何将对象从一个js发送到另一个js文件? 我不能使用任何会话,cookie,jsp文件。
我可以使用查询字符串,ajax或jquery。
是否可以通过查询字符串发送对象?
如何从querystring获取对象?
答案 0 :(得分:1)
您可以使用jQuery QueryString插件:http://plugins.jquery.com/project/query-object
用法看起来非常简单,插件页面上有一个很好的例子。
除此之外,您可以使用正则表达式来解析QueryString,但如果我是你,我可能会采用插件方法。
答案 1 :(得分:0)
您可以通过查询字符串单独传递对象属性,然后在其他对象上重建对象。
答案 2 :(得分:0)
这是一个简单的例子,其中javascript对象从一个网页发送到另一个网页。在这种情况下,对象在请求的GET参数中发送。 第一个示例将在单击链接时发送对象
<html>
<head>
<script src="../prototype.js" type="text/javascript"></script>
<script type="text/javascript">
Event.observe(window, 'load', function() {
sendObject=function(el){
var myObj = eval('(' + this.readAttribute('obj') +')');
window.location = 'test.php?obj='+ this.readAttribute('obj');
}
$('sendobj').observe('click',sendObject);
});
</script>
</head>
<body>
<div id="sendobj" foo="bar" obj="{'id':'3','name':'fred'}">
Send the object
</div>
</body>
</html>
文件test.php文件可以处理对象,当页面加载时,对象可用。
<html>
<head>
<script src="../prototype.js" type="text/javascript"></script>
<script type="text/javascript">
Event.observe(window, 'load', function() {
var person=<?php echo $_GET['obj'] ?>;
//and now the object is available in the page that we arrived at
alert('My name is ' + person.name);
});
</script>
</head>
<body>
The object is here now
</body>
</html>