2017-02-08 53 views
0

我要求在一個物質化,CSS模式的看法評論:Rails的AJAX模式不關閉後提交

<% @contents.each do |content| %> 
some form elements 

<%=button_to('Comments', new_comment_path, :method => :get, params: { :content_id => content.id }, :class=> 'modal-trigger', 'data-target'=>'modal4'+content.id.to_s) %> 

<% end %> 

模式=>

<div id="modal4<%=content.id%>" class="modal modal-fixed-footer"> 
<div class="modal-content"> 
    <%= form_for Comment.new, remote: true do |f| %> 
    … 
    … 
    <%= f.submit 'Send’ %> 

    <% end %> 

CommentsController =>

def create 
    @comment = Comment.new(comment_params) 
end 

的值保存在數據庫中: 渲染註釋/ create.js.erb(0.0ms)

但是:提交後無法再讓模式關閉。

create.js =>

試圖與

$('#modal4').closeModal(); 
$('#modal4').modal('close'); 
$('modal4<%[email protected]_id%>').closeModal(); 
$(„modal4<%[email protected]_id%>").modal('close'); 

但沒有成功.. 需要一些幫助,使該工作。由於

+0

什麼是'content'?你在'comments'表中有'content_id'列嗎? –

+0

爲了評估JS內部的ruby代碼,將文件重命名爲'create.js.erb'。 –

+0

@Arun => content_id在.. 添加信息: 由於模態在視圖類別中調用,並且create.js.erb在註釋焦點中,它會爲我尋找$('#modal4')。 closeModal(); 未找到要關閉標籤的路徑。 – Werner

回答

0

確定。點是application.html條目=>

<base href='http://lvh.me:3000' /> 

創建=>的XMLHttpRequest無法加載

我最終成功地與... 路線:

resource :contents do 
    resources :comments, only: [:new, :create, :update] 
end 

調用模式

<%=button_to('Comment', '#', :method => :get, :class=> 'button button-primary button__slim send__feedback modal-trigger', 'data-target'=>'modal4'+content.id.to_s) %> 

從模態

<%= form_for(Comment.new, url: contents_comments_path, remote: true) do |f| %> 
... 
<%end%> 

的comments_controller:

def create 
    @comment = Comment.new(comment_params) 
    @comment.update_attributes(rating: params[:rating]) 
end 

和create.js.erb

$('#modal4<%[email protected]_id%>').closeModal();