【发布时间】:2019-11-07 06:01:23
【问题描述】:
我对 RoR 很陌生,所以我应该错过一些东西 我在单击按钮时尝试通过 Ajax 加载弹出窗口 每次我尝试访问它时,我都会收到 Ajax 方法的错误,您可以在下面看到
- 我相信我的合成器是正确的
- 我显然创建了一个“pbbackground”文件
- 我在点击操作的按钮中也提到了该行
- 我尝试加载一个包含已有弹出窗口内容的弹出窗口,但它不起作用
- 弹出窗口正在加载但未显示,我收到 ajax 错误消息 => 我猜我的“成功”部分是问题,但我不知道原因
- 我使用了“调试器”;发现它是否尝试进入 JS 的“成功”部分,但似乎没有
- 在检查我的浏览器控制台时,我发现错误是 404
我的JS方法:
function loadProgressForm(resource, id){
$(".form_loader").show();
if(resource == "new"){
url = "/progress_boards/new";
popup_name = "Make A Progress Board";
} else if (resource == "edit"){
url = "/progress_boards/" + id + "/edit";
popup_name = "Add/Remove Metrics";
} else if (resource == "pbbackground"){
url = "/progress_boards/" + id + "/pbbackground";
popup_name = "Add A Picture";
}
$.ajax({
url: url,
success: function(response, data){
$("#progress_board_form").html(response.html);
$("#progress_board_form").find('.modal-title').text(popup_name);
$(".form_loader").hide();
},
error: function(response, data){
alert("Error loading project form")
$(".form_loader").hide();
}
})
}
按钮代码:
%li= link_to 'Add Background', 'javascript:void(0)', onclick:"$('#create_edit_progress_board_model').appendTo('body').modal('show'); loadProgressForm('pbbackground', #{@progress_board.id});"
另外,这是我的route.rb文件中与我的文件夹相对应的部分:
resources :progress_boards do
collection do
get :get_progress_data
get :get_panel_data
get :render_tab
end
member do
get :open_or_archive
end
end
【问题讨论】:
-
url = "/progress_boards/new"工作??? -
是的,它工作正常
-
你的服务器控制台有错误吗?
-
是的,这里是@jvillian:在 2019-06-25 16:54:21 +0100 ActionController::RoutingError (No route) 开始 GET "/progress_boards/7/pbbackground" for 127.0.0.1匹配 [GET] "/progress_boards/7/pbbackground"):
-
所以,您遇到了路由错误。请将您的
routes.rb添加到您的问题中。
标签: html ruby-on-rails ruby select haml