2009-05-11 4 views
1

Prototype의 Ajax는 GET 또는 POST 변수로 자동 전송되는 매개 변수 (prototype doc)에 대한 해시 배열과 함께 'parameters'라는 매개 변수를 허용하지만 Rails button_to_remote 메소드를 사용하여 해당 배열에 항목을 추가하는 방법을 찾지 못했습니다.링크/button_to_remote 통화에 추가 매개 변수를 보내는 방법은 무엇입니까?

나는 메서드에 전송 된 URL에 매개 변수를 추가 할 수 있었지만 해킹 된 느낌이 들었다. 더 나은 해결책이 있습니까?

답변

3

사실 해결책을 찾았습니다! 당신은 사용하여 함수에서 매개 변수를 전달할 수 있습니다 : 옵션을 사용하여, 다음과 같이 :

<%=button_to_remote "+3", {:url =>task_path(@project, @story, task), :with=>"'actual=3'"}%> 

을 트릭은 그 값 :처럼 URL 형식으로 키 - 값 쌍을 반환해야 자바 스크립트 식입니다 함께 "key = value". 그래서 위의 동일한 값에 대한 추가 인용문이 있습니다.

함수

은 필요한 경우 페이지에서 정보를 추출하는 데 사용 수 : 양식이 제출되기 전에

:with=>"getValuesForPostbackFunction()" 

기능은 평가 될 것입니다.

0

button_to_remote를 호출하는 양식에 숨겨진 입력 필드를 추가하십시오. 다음 작업으로 매개 변수를 보낼 button_to_remote 유일한 방법을 사용하여

<input type="hidden" name="name" value="myValue"> 
+0

답장을 보내 주셔서 감사합니다. 양식이 없기 때문에 양식에 입력 태그를 추가 할 방법이 없습니다. button_to_remote는 폼이없는 프로토 타입 Ajax 객체를 만든다. –

1

는 URI에 넣어된다.

button_to_remote은 매개 변수를 추가하는 다른 방법이없는 link_to_remote의 기능상 등가로 사용됩니다.

세분화 된 컨트롤이 더 필요한 경우 전체 양식을 작성하여 작업에 제출해야합니다.

+0

네 말이 맞아. 하지만 그 매개 변수를 추가하는 방법이 없다는 것은 어리석은 것처럼 보입니다. –

+0

실제로 추가 매개 변수를 전달하는 방법을 찾았습니다. 내 질문에 대한 내 대답을 확인하십시오! –

관련 문제