2012-05-16 2 views
0

레일즈 2.3.14에서 레일즈 3.0으로 이전 레일스 앱을 변환하고 있습니다.레일 3 : js/프로토 타입을 통해 원격 양식으로 제출하십시오.

아직 Prototype을 사용하고 있습니다 (jQuery 로의 변환은 마이그레이션 경로의 후반 단계이기 때문에). jQuery는 응답하지 않습니다.

풀다운 중 하나가 변경 될 때마다 현재 AJAX로 제출하는 풀다운이있는 양식이 많이 있습니다. 레일 우리가 form_remote_tag을 사용하고 풀다운 메뉴에 대한 onchange 이벤트가 ajaxily 양식을 제출 $('myform').onsubmit();를 부를 것이다 2.3 버전에서

. 우리가 풀다운 메뉴에서 옵션을 선택하면 레일에서

3.0 지점, 우리가 :remote => trueform_tag를 사용할 수있는 형태로 변환 한하지만, 방화범에 그냥 $('myform').submit();가 발생 $('myform').onsubmit();에서 변경 $('myform').onsubmit is not a function.

보고 양식을 제출하려면 아약스 티.

풀다운에서 onchange 이벤트를 사용하여 Prototype 및 Rails 3을 사용하여 양식을 ajaxily로 전송하는 방법에 대한 제안 사항이 있으십니까?

감사합니다.

답변

0

알아 냈어. 간단히 말해서 나는 기본적으로 이전 form_remote_tag이해야 할 무엇을 사용 재현 그건 ...

:onsubmit => "new Ajax.Request('#{url}', {asynchronous:true, evalScripts:true, method:'get', parameters:Form.serialize(this)}); return false;"

form_tag 통화에서 :remote => true을 제거하고 그것의 장소에 다음 인수를 추가했다.

이것은 영구적 인 해결책이 아닙니다. 이 응용 프로그램을 jQuery로 전환하는 시점까지 우리를 데려 가기위한 발판.