用javascript回复HTML请求?

fot*_*nus 7 ruby-on-rails response request httprequest

是否可以使用javascript响应HTML请求?我这意味着我不希望刷新页面并加上执行一些javascript代码.我想知道这是否可以通过仅更改服务器端?

在我的行动中,我有一些选择回应jshtml喜欢这样的东西:

respond_to do |format|
  format.js
  format.html
end
Run Code Online (Sandbox Code Playgroud)

我有一个.js.erb文件,当然,应该在浏览器请求javascript时呈现.

可以这样做吗?怎么样?

Jes*_*ott 5

您不能仅通过更改服务器端代码来执行此操作。如果您希望在服务器响应时执行javascript,则需要通过javascript提交表单。这是因为javascript将评估服务器的响应并运行代码。

这可以在Rails中轻松添加:

<%= form_for @user, remote: true %>
Run Code Online (Sandbox Code Playgroud)

提交后,您可以发回JavaScript。例如,要警告已添加用户:

/app/views/users/create.js.erb

alert("user <%= j @user.email %> was added");
Run Code Online (Sandbox Code Playgroud)