2014-10-03 5 views
0

좋아,이 대화 상자를 열려면 단추가 필요한 사이트가 있습니다. 이 대화 상자가 열려있을 때만이 대화 상자에 부분을 추가하는 방법을 알아 내려고 노력 중입니다 ...대화 상자에 부분 추가 ​​

대화 상자가 닫힐 때 부분 오류를 다른 양식에서 처리하기 위해 JavaScript가 있습니다.

$(document).ready(function() { 
    $(function() { 
     $("#dialog_box").dialog({ 
      autoOpen: false 
     }); 
     $("#test_button").on("click", function() { 
      $("#dialog_box").dialog("open"); 
     }); 
    }); 
}); 

대화 상자가 열릴 때만 양식을 추가 할 수 있고 대화 상자가 닫힐 때 양식을 제거 할 수 있습니까?

<script> 
    $('#form_div').append('<%= render(:partial => 'payment_form')%>'); 
</script> 

또한 메인 페이지에서 인스턴스 변수에 액세스해야합니다.

@company, @user, @info 

페이지 HTML을

<button id="test_button">Push Me</button> 
<div class="main"> 
    <div id="dialog_box" title="Payment Details"> 
     <div id="form_div"></div> 
    </div> 
</div> 

답변

1

난 당신이 대화 상태를 제어하는 ​​대화 콜백 메소드를 사용해야합니다 생각 : http://api.jqueryui.com/dialog/

: 당신은 전체 목록 오 방법과 여기에 콜백을 찾을 수 있습니다

$(document).ready(function() { 
    $(function() { 
     $("#dialog_box").dialog({ 
      autoOpen: false, 
      open: function(event, ui) { 
       console.log('Dialog opened'); 
      }, 
      close: function(event, ui) { 
       console.log('Dialog closed'); 
      } 
     }); 
     $("#test_button").on("click", function() { 
      $("#dialog_box").dialog("open"); 
     }); 
    }); 
}); 

건배!

관련 문제