Javascript 在RubyonRails中使用ajax调用js.erb文件

Javascript 在RubyonRails中使用ajax调用js.erb文件,javascript,jquery,ruby-on-rails,ajax,erb,Javascript,Jquery,Ruby On Rails,Ajax,Erb,我有下面的jQuery函数,我正试图用它与rails一起在页面上创建一个警报 $("#buttonID").click(function() { foo = $("#otherID").val(); $.ajax({ submitVar: foo //no idea what to do here type: 'GET', url: 'controller/action_js', dataType:

我有下面的jQuery函数,我正试图用它与rails一起在页面上创建一个警报

    $("#buttonID").click(function() {
      foo = $("#otherID").val();
      $.ajax({
        submitVar: foo //no idea what to do here
        type: 'GET',
        url: 'controller/action_js',
        dataType: 'script'
      });
    });
在我的控制器中

    def action_js
      @item = Item.find(:name => foo)
      respond_to do |format|
        format.js
      end
    end
行动_js.js.erb:

    alert(@item);
我试图这样做,当我单击id为'buttonID'的按钮时,会出现一个警报,显示数据库中名称等于id为'otherID'的字段值的项。我不知道如何在ajax中正确使用js.erb,也不知道如何将变量传递给我的js.erb文件。单击按钮当前不会执行任何操作。

您可以使用

jQuery.getScript()
方法来运行它。详见

$.ajax({ ..., 数据类型:“脚本”, .. }) 上述两种方法都将获取一个脚本,然后执行它

您可以使用

jQuery.getScript()
方法来运行它。详见

$.ajax({ ..., 数据类型:“脚本”, .. })
上述两种方法都将获取一个脚本,然后执行它

好的,这就是获取和执行脚本的方式。非常感谢。有没有办法将变量传递给控制器操作或js.erb文件本身?rails“params”散列仍然会让您获取或发布数据,您可以在控制器或视图中使用它。好的,我已经让它工作了。谢谢,伙计。愿你的剑锋利,你的骏马敏捷。好吧,这就是你获取和执行脚本的方式。非常感谢。有没有办法将变量传递给控制器操作或js.erb文件本身?rails“params”散列仍然会让您获取或发布数据,您可以在控制器或视图中使用它。好的,我已经让它工作了。谢谢,伙计。愿你的剑锋利,你的马敏捷。 $.ajax({ ..., dataType: "script", .. })