开发中的jQuery Ajax Post进入生产阶段

时间:2014-11-08 09:25:53

标签: javascript jquery ruby-on-rails ruby

我有一个很大的烦恼,我无法弄明白。 我的Rails应用程序发出了一个jQuery post请求,该请求在开发中很有用,但变成了Get in production。 资产似乎正确预编译,我实际上可以美化生产js代码并找到确切的ajax代码(我在开发中使用相同的代码..)

//my js
$(document).on("click", ".create-candidate-submit", function (e, data) {
urlToPost = DOMAIN_NAME + "stories/" + e.currentTarget.id + "/" + "candidates/";
console.log("urlToPost", urlToPost);
$.ajax({
    type: "POST",
    url: urlToPost,
    data: {"candidate": {
        "text": $("#createNewCandidate").val(),
        "story_id": e.currentTarget.id
    }
    },
    dataType: "script",
    success: function (res) {
        console.log("success called..", res);
        //  eval(res);
    }
});

});

   //erb
  <%= form_for [@story,@candidate],remote: true, html: {:role=>"form"} do |f|%>
          <div class="form-group">
            <label for="createNewCandidate">create story</label>
            <%=f.text_field :text,{:class=>"form-control",:id=>"createNewCandidate",:size=>30}%>
            <%=f.hidden_field :story_id%>
            <%=f.hidden_field :user_id %>
            <div class="btn btn-primary create-candidate-submit" id="<%=@story.id%>">שלח</div>

          </div>
      <%end%>

 applicaiton.js.erb
 //= require jquery
 //= require jquery_ujs
 //= require twitter/bootstrap
 //= require turbolinks
 //= require css_settings.js.erb
 //= require_tree .

生产出现问题,我不能为我的生活弄清楚..请帮忙!

2 个答案:

答案 0 :(得分:0)

你可以试试$ .post而不是$ .ajax吗?

答案 1 :(得分:0)

应该更仔细地阅读jQuery文档(这与Rails无关)

&#34; script&#34;:将响应评估为JavaScript并将其作为纯文本返回。通过将查询字符串参数&#34; _ = [TIMESTAMP]&#34;,附加到URL来禁用缓存,除非缓存选项设置为true。注意:这会将POST转为GET以获取远程域请求

我确定这是导致我这个问题的原因。