2011-03-15 3 views
1

Rails 2.3.8 애플리케이션을 Prototype에서 jQuery로 전환하려고합니다. 더 이상 RJS를 사용하지 않으므로 remote_form_for 호출을 일반 old form_for로 전환합니다.Rails 2.3.8 양식 도우미로 AJAX 제출을 수행하려면 어떻게해야합니까?

그러나이 양식의 제출 단추는 AJAX 호출을 수행하지 않습니다. 그들은 정기적 인 POST를하고 있습니다.

내가 application.js에 jQuery를 기능이 있습니다

jQuery.fn.submitWithAjax = function() { 
    this.submit(function() { 
    alert("submitting"); 
    $.post($(this).attr('action'), $(this).serialize(), null, "script"); 
    return false; 
    }); 
}; 

와 내 폼에 호출 오전 :

// Search 
$('#lookup').submitWithAjax(); 

내가 대신 버튼 자체에 전화를해야합니까? 나는 모든 조각들이 제자리에 떨어지는 것을 막고있는 간단한 조각을 여기에서 놓치고있다.

답변

2

$thisthis.submit입니다. 또한, 비언어적 인 컨벤션 당, 당신은 아마 그 주위에 $. 주위를 포장해야한다 그래서 당신은 여러 요소에 이벤트를 바인딩 할 수 있습니다.

$.fn.submitWithAjax = function() { 
    $(this).each(function(){ 
     $(this).submit(function() { 
      $.post($(this).attr('action'), $(this).serialize(), null, "script"); 
      return false; 
      }); 
    }); 
}; 
관련 문제