2010-01-14 73 views
1

假設網頁只有超鏈接。我沒有使用任何形式。如果用戶點擊該鏈接。該頁面將被重定向到帶有JSON對象的另一個頁面。我必須從js腳本文件中獲取該對象。我怎樣才能從一個js發送一個對象到另一個js文件? 我無法使用任何會話,cookies,jsp文件。如何將一個對象從一個js文件發送到另一個js文件?

我可以使用查詢字符串,AJAX或jQuery。

是否可以通過查詢字符串發送對象?

如何從查詢字符串中獲取對象?

回答

0

您可以通過查詢字符串單獨傳遞對象屬性,然後重建其他對象。

+0

如何從查詢字符串中獲取對象? – 2010-01-14 11:30:00

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> 
1

您可以使用jQuery的查詢字符串插件:http://plugins.jquery.com/project/query-object

用法似乎很簡單,沒有插件頁面上一個很好的例子。

除此之外,您可以使用正則表達式來解析QueryString,但如果我是你,我可能會使用插件方法。

相關問題