如何将对象从一个js文件发送到另一个js文件?

时间:2010-01-14 09:21:50

标签: jquery ajax

假设网页只有一个超链接。我没有使用任何形式。如果用户单击该链接。该页面将被重定向到另一个带有JSON对象的页面。我必须从js脚本文件中获取该对象。如何将对象从一个js发送到另一个js文件? 我不能使用任何会话,cookie,jsp文件。

我可以使用查询字符串,ajax或jquery。

是否可以通过查询字符串发送对象?

如何从querystring获取对象?

3 个答案:

答案 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>