2012-07-04 118 views
-2

我使用javascript window.open方法發送GET請求,並且需要傳遞一些id的數組。所以當我得到這樣的URL:在獲取請求之前發送AJAX請求

http://localhost:3000/controller_path/new?ids[]=1025&ids[]=1027 

但這是不可接受的。網址不應該像這樣。我不能通過POST發送參數,因爲我的團隊負責人否認了這一點。

我不知道我能在我的主要GET請求發送Ajax請求,並傳遞的ids陣列有了它,好歹存儲在我的「新」的方法,並利用它們時正在發送GET要求?如果可能的話,我如何在rails中做到這一點?我其他的話我需要發送我的數組與ajax請求,以某種方式存儲它,並在我的實際GET請求發送時使用它。感謝您的回覆。

回答

2

您可以使用JSON序列化數據。

所以,如果您有:

var ids = [9,4,5,8]; 

您可以使用此:

var getString = "?ids="+JSON.stringify(ids); 
var filePath = "whereYouAreSending"; 
window.open(filePath+getString); 
+0

這將使URL像'」 http:// localhost:3000/controller_path/new?ids = [9,4,5,8]「'你應該編碼它,它會像'」http:// localhost:3000/controller_path/new ids =%5B9%2C4%2C5%2C8%5D「' – Esailija

+0

它是否定的這是一個解決方案,但它使URL看起來更好。謝謝 –

0

定義route與控制器的方法來處理數據