如何使用ROR从控制器操作调用javascript函数

如何使用ROR从控制器操作调用javascript函数,javascript,ruby,ruby-on-rails-3,Javascript,Ruby,Ruby On Rails 3,有人能帮我解决一个小问题吗?事实上,我想从控制器操作方法调用一些javascript函数。我已经编写了一些代码,但它不起作用。因为我对ROR完全陌生,可能是我在某个地方犯了错误。请检查我下面的代码片段并修改它们以成功运行这些代码 我的代码片段如下 views/users/index.html.erb: <center> <h1>....Testing...</h1> <p> <a href="/users/br

有人能帮我解决一个小问题吗?事实上,我想从控制器操作方法调用一些javascript函数。我已经编写了一些代码,但它不起作用。因为我对ROR完全陌生,可能是我在某个地方犯了错误。请检查我下面的代码片段并修改它们以成功运行这些代码

我的代码片段如下

views/users/index.html.erb:

<center>
    <h1>....Testing...</h1>
    <p>
        <a href="/users/browser"><button type="button">Check Browser</button></a>
    </p>
    <p>
        <a href="/users/time"><button type="button">Check Time</button></a>
    </p>
</center>
routes.rb

Jscript::Application.routes.draw do
  root :to => "users#index"
  get "users/browser" => "users#browser"
  get "users/time" => "users#time"
end

请帮助我。提前谢谢。

尝试将链接更改为使用js格式,因为您特别告诉控制器通过format.js块处理js:

<center>
  <h1>....Testing...</h1>
  <p>
      <a href="/users/browser.js"><button type="button">Check Browser</button></a>
  </p>
  <p>
    <a href="/users/time.js"><button type="button">Check Time</button></a>
  </p>
</center>

……测试。。。

作为替代方案,您可以告诉rails始终在控制器中呈现所有格式的js:

class UsersController < ApplicationController
  def index
  end

  def browser
    render :js => "my_browser();"
  end

  def time
    render :js => "my_time();"
  end
end
class UsersController“我的浏览器();”
结束
def时间
render:js=>“我的时间()
结束
结束

希望这能提供一些帮助。

按照您的说明,编辑代码后,我只得到字符串(即my_browser)。但我的目标是调用my_browser函数并在其中执行警报提示。还有其他建议吗?请检查此项
<center>
  <h1>....Testing...</h1>
  <p>
      <a href="/users/browser.js"><button type="button">Check Browser</button></a>
  </p>
  <p>
    <a href="/users/time.js"><button type="button">Check Time</button></a>
  </p>
</center>
class UsersController < ApplicationController
  def index
  end

  def browser
    render :js => "my_browser();"
  end

  def time
    render :js => "my_time();"
  end
end