2015-06-02 5 views
2

Привет Я хочу, чтобы открыть всплывающее окно, я дал это на мой взглядкак открыть всплывающее окно в rails4 link_to

<%=link_to 'show',edit_interview_round_path(round), :remote => true%> 
<div id="popup"> 
</div> 

и написал это в мой контроллер

def edit 
    @interview_round = InterviewRound.where(id: params[:id]).first 
    respond_to do |format| 
    format.js 
    end 
end 

и я имею редактировать .js.erb

$("#popup").html('<%= escape_javascript(render 'interview_rounds/form') %>'); 

в interviews_rounds/редактировать вид написал это

<%= render 'form' %> 

ввиду interview_rounds/_form написал эту

<%= form_for @interview_round do |f| %> 

    <div class='modal'> 
     <%= f.text_field :name, :class => 'form-control' %> 
     <label for='name'>Name</label> 
    </div> 


    <div class='input-field col s12' > 
     <%= f.text_field :question_1, :class => 'form-control' %> 
     <label for='name'>Name</label> 
    </div> 

    <div class='col s12 center-align'> 
     <%= button_tag(:class => "btn waves-effect waves-light btn-large custom_btn_gray") do %> 
      Submit <i class="mdi-content-send right"></i> 
     <% end %> 
    </div> 

<% end %> 

Так что теперь, когда я нажимаю на шоу она не открывается всплывающее окно он показывает вид редактирования на той же странице я хочу показать его во всплывающем окне, пожалуйста, посоветуйте мне, как это сделать. Заранее спасибо!

+0

'window.open (<% = edit_interview_round_path (@interview_round)%>, "MyWindow", "ширина = 600, высота = 600");' добавьте эту строку в edit.js.erb –

+0

ее не работает, что – user4965201

+0

ошибка идет? –

ответ

0

Попробуйте константы выглядит форматирование частичного кода визуализации:

$("#popup").html("<%= j render(:partial => 'interview_rounds/form') %>"); 

Похоже, у вас есть вложенные одинарные кавычки, которые, вероятно, вопрос. Ваш код в настоящее время настроен для рендеринга частичного на той же странице в div с идентификатором всплывающего окна.

Если вы хотите, чтобы сделать его в новом окне, попробовать что-то вроде этого:

var wind = window.open("", "popupWindow", "width=600,height=600"); 

wind.document.write("<%= j render(:partial => 'interview_rounds/form') %>"); 

Если формы правильно рендеринг в #popup DIV и вам нужен модальный или наложение эффекта, вы просто чтобы стиль всплывающего div как модальный, и вам хорошо идти.

+0

, он отображает форму на одной и той же странице, но не открывает всплывающее окно – user4965201

+0

См. Редактирование изменений. –

+0

да, это открытие нового окна, но я хочу открыть в том же окне, что и в модальном диалоговом окне jquery, и показать, что форма редактирования в модальном диалоговом окне – user4965201

Смежные вопросы