2012-06-22 4 views
0

내가 작업하고있는 프로젝트는 여러 페이지 (예 : 로그인 페이지 및 가입 양식)를 모달로 렌더링합니다.이 링크는 클래스 .modal에 다음 링크를 제공함으로써 완성됩니다 트리거 것 :레일스 컨트롤러에서 자바 스크립트 함수 호출하기

$('.modal').click(function(){ 
    var url = this.href; 
    var dialog = $('<div id="modal" style="display:none"></div>').prepend('#barhappy_container'); 
    dialog.load(url, function(){ 
     dialog.dialog({ 
      modal: true, 
      draggable: false, 
      position: 'center', 
      dialogClass: 'no-title', 
      width: 'auto', 
/*   height: 'auto', */ 
      resizable: false, 
      open: function(){ 
       $.getScript('/assets/modal/in-modal-open.js'); 
      }, 
      close: function(event, ui){ 
       dialog.remove(); 
      } 
     }); 
    });  
    return false; 
}); 

그러나, 지금 같은 방식으로 표시하는 컨트롤러에 의해 렌더링 된 페이지를 필요로하지만, 클래스 .modal을 부여 할 수 클릭 할 링크가 없습니다.

그래서 내 Rails 컨트롤러에서이 JavaScript 함수를 호출하고 적절한 매개 변수를 전달하는 방법이 있습니까?

+0

라고, 어떻게 도달? 모달 대화 상자에 페이지를 표시하려면 해당 대화 상자가 어떤 페이지에서 플로트됩니까? –

+0

'메시지를 보내 주셔서 감사합니다'라는 비슷한 새 메시지를 제출하면 연락처 양식 위에 떠있는 모달 팝업입니다. –

답변

2

알아 냈어!

create.js.erb라는 contact_messages 뷰 폴더에 js 파일을 추가했습니다.

그런 다음 contacts_to 블록을 사용하여 Contact Messages 컨트롤러에서 해당 js 파일을 활성화했습니다. 의 js 파일 내부

, 나는 페이지의 링크를 클릭하여 도달하지 않은 경우 모달 기능의 변화 ...

관련 문제