2012-07-04 12 views
-2

GET 요청을 javacript window.open 메서드와 함께 보내고 일부 ID 배열을 전달해야합니다. 그래서 URL이 이렇게되면 :요청하기 전에 AJAX 요청을 보내십시오.

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

그러나 이것은 허용되지 않습니다. URL은 이와 같이 보이면 안됩니다. 그리고 팀 리더가 그것을 부인했기 때문에 POST을 통해 매개 변수를 보낼 수 없습니다. 내가 내 주요 GET 요청하기 전에 아약스 요청을 보내고 그것으로 ids의 배열을 전달할 수 있을까

, 내 "새로운"방법에 어떻게든지 그것을 저장하고 GET 요청이 전송 될 때이를 사용? 가능하다면 레일에서 어떻게 할 수 있습니까? 다른 말로하면 아약스 요청으로 배열을 보내고 어떻게 든 저장하고 내 실제 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] "'그러면 uri로 인코딩하면 http : // localhost : 3000/controller_path/new ? ids = % 5B9 % 2C4 % 2C5 % 2C8 % 5D "' – Esailija

+0

아니요 솔루션이지만 URL이 더 멋지게 보입니다. 감사 –

0

데이터를 처리하는 컨트롤러의 방법으로 route를 정의

관련 문제