尝试渲染模式以更新任务但是当使用remote:true时,它只是请求html格式,我甚至检查了也不接受js的请求标题。
Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
我不确定是什么错。我已经尝试在link_to中说明格式并在控制器中有一个respond_to,但是渲染原始文本html而不是在我的.js.haml中执行js
违规代码:
查看[.html.haml]:
= link_to 'Edit', edit_task_path(task), remote: true
控制器:
def edit
@task = Task.find(params[:id])
render :show_form
end
show_form.js.haml:
:plain
$('#modal1').modal('open');
$('#modal1').html("#{escape_javascript(render partial: 'create_task', locals: {task: @task})});
此外,我还包含了所有必需的库,我甚至使用了remote:true否则在代码中提交表单的位置都可以正常工作。
答案 0 :(得分:0)
在控制器中按照以下代码进行更改。
respond_to do |format|
format.html { render layout: 'YOUR LAYOUT' }
format.js
end
you can use template or text in place of layout.
答案 1 :(得分:0)
将以下内容写入清单文件(application.js)
//= require jquery
//= require jquery_ujs