jquery - 为什么在 Ruby on Rails 中没有使用 jQuery AJAX 执行 respond_to js?

标签 jquery ruby-on-rails

我正在向我的服务器运行一个简单的 AJAX 发布,respond_to .js block 作为 200 成功返回,但未执行。我的配置或执行返回 js 代码的代码中是否缺少某些内容?我正在使用 Ruby on Rails 3.2.9。

JavaScript:

    $("#test-submit").on("click",function(event){
      $.ajax({
        type: "POST",
        url: '/users',
        dataType: 'json',
        data: {
          "test" : "test-data"
        }
      });
      event.preventDefault();
    });

Controller 操作:

  def create
    user = User.find(current_user)

    respond_to do |format|
      format.js { }
    end
  end

用户create.js.erb:

alert('hai');

最佳答案

...
dataType: 'json',
...

您需要 JSON 数据,而不是可执行脚本。尝试将此行更改为

dataType: 'script',

关于jquery - 为什么在 Ruby on Rails 中没有使用 jQuery AJAX 执行 respond_to js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13579867/

相关文章:

javascript - 防止菜单高度改变?

ruby-on-rails - Rails 系统测试 : how to set default_host_url

ruby-on-rails - 在 Rails 3.2.3 中呈现 text_area 时出现额外的空格

ruby-on-rails - 只需一次迁移即可向下迁移

javascript - jQuery .getJSON Firefox 3 语法错误未定义

javascript - 如何检查 CSS 背景色是否为白色?

ruby-on-rails - Gemfile :22: syntax error, 意外的 tIDENTIFIER,预计输入结束

ruby-on-rails - 错误 : Could not find a valid gem 'rails' (>= 0) in any repository

javascript - 鼠标滚轮移动时调用函数

javascript - 使用 id 或 class 获取元素类型