响应javascript解释为文本而不是evaled

时间:2015-07-25 17:56:10

标签: javascript ruby-on-rails ruby ajax coffeescript

所以,我尝试做的是点击此按钮后

= button_to( 'Add to cart' , format: 'js', action: "add_product", controller: "shopping_cart", remote: true, params: {product_id: @product.id})

此控制器操作

  def add_product
    @shopping_cart.add_product @product_id
    respond_to do |format|
      format.js { render 'add' }
    end
  end

使用此js的响应为eval uated(编译后这是.js.coffee视图)

(function() {
  window.refreshCartDiv();

}).call(this);

一切似乎都运行正常,但是这个代码而不是浏览器的eval在新页面上显示为文本。我读到这可能是由于缺乏

造成的
//= require jquery
//= require jquery_ujs
application.js中的

,或javascript代码本身的错误,但对我来说没有例子 - require存在且此代码不会产生错误(已选中)。 控制台还显示了所谓的正确处理

Started POST "/shopping_cart/add_product.js?product_id=11&remote=true" for::1 at 2015-07-25 19:49:18 +0200
Processing by ShoppingCartController#add_product as JS

其他可能的原因/解决方法是什么?

0 个答案:

没有答案