Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ruby ajax调用启动未命名的弹出框_Javascript_Jquery_Ruby On Rails_Ruby_Ajax - Fatal编程技术网

Javascript Ruby ajax调用启动未命名的弹出框

Javascript Ruby ajax调用启动未命名的弹出框,javascript,jquery,ruby-on-rails,ruby,ajax,Javascript,Jquery,Ruby On Rails,Ruby,Ajax,在RubyonRails项目中,我有一个AJAX调用,用于我的一条路线。它调用Ruby控制器中的一个方法来更新我的几个对象上的标志,然后我需要重新加载页面以反映这些更改。这是我的解决方案,在Ruby方法的末尾: 这正是我需要它做的,它刷新页面并将用户拉回到顶部以查看flash通知。但是,在执行此操作之前,会弹出一个窗口,显示: The page at localhost says: "window.location = '#{processed_items_path(params)}'"

在RubyonRails项目中,我有一个AJAX调用,用于我的一条路线。它调用Ruby控制器中的一个方法来更新我的几个对象上的标志,然后我需要重新加载页面以反映这些更改。这是我的解决方案,在Ruby方法的末尾:

这正是我需要它做的,它刷新页面并将用户拉回到顶部以查看flash通知。但是,在执行此操作之前,会弹出一个窗口,显示:

The page at localhost says:
  "window.location = '#{processed_items_path(params)}'"

它要求您单击“确定”,然后才能继续。有没有办法摆脱这个框?

根据上面的评论,与其重定向,不如只渲染包含表的部分内容

我假设您的ajax调用正在工作,因为它将您带到您的方法。要渲染局部图像,可以执行以下操作:

def your_method
  #your logic of updating attributes
  respond_to do |format|
    format.js {} # this will let rails look for a file named your_method.js.erb in your view
  end
end 
现在,您只需在_method.js.erb中渲染您的部分


有关详细信息,请参阅

如果您想重定向页面,那么为什么要使用ajax?因为我试图从视图上的一系列复选框中获取信息,但这些复选框不在表单中。这些框是动态生成的表的一部分。因此,我使用javascript方法获取我需要的信息,并使用ajax调用将其发送回控制器。好的,那么您通过ajax调用获取所有信息,那么为什么要在这之后重定向页面?我将向我的控制器发送ID列表。然后我找到这些项目并编辑它们。编辑完成后,我需要刷新页面,以便表反映新信息。您可以渲染部分包含的表,而不是重定向,因为您是在编辑资源后进行渲染的,所以它现在将自动包含新信息,而不是带有刷新代码的对话框,这是一个对话框,看起来像整个表的html,你必须确定。似乎我实际使用的代码行并不重要,如果在ajax调用之后我使用javascript做任何事情,它会弹出一个对话框,用户必须确定。我只是想知道如何停止。@user3254621您所说的这是一个对话框,它看起来像整个表的html?@user3254621如果所有内容都设置正确,则不会显示该对话框。您使用的是哪种浏览器?您可以使用ajax调用方法发布控制器代码吗?
def your_method
  #your logic of updating attributes
  respond_to do |format|
    format.js {} # this will let rails look for a file named your_method.js.erb in your view
  end
end 
$("#some_id_of_parent_element").html("<%=j render partial: "partial_containing_table", locals: { :your_local => partial_local} %>");