gpt4 book ai didi

ruby-on-rails - Rails form_for :remote=>true is not calling js method

转载 作者:行者123 更新时间:2023-12-03 08:36:41 27 4
gpt4 key购买 nike

我不知道为什么这不起作用,我正在学习 rails 并且我正在关注一本书,它说这样做是这样的:

    <%= form_for([@article,@article.comments.new ], :remote=>true, :html => {:style=>'display: none;' }) do |f|%>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :email %>
<%= f.text_field :email %>
</div>
<div class="field">
<%= f.label :body %>
<%= f.text_area :body %>
</div>
<%= f.submit %>
<% end %>

但是它不起作用,当我在 firebug 中检查请求时,url 不以 .js 结尾,你知道为什么吗?

最佳答案

当您检查在 firebug 中发出的请求时,仅仅因为 url 没有以 .js 结尾,并不意味着它不是从 javascript 调用的。要验证您是否应该检查请求 header 以查看 Accept 参数是什么。如果它说“应用程序/javascript”,那么一切都很好。

其次,开始尝试 :remote => true 时,一个非常常见的问题是所需的 javascript 库未包含在您的代码中。所以我的猜测是您的布局中缺少以下代码:

<%= javascript_include_tag :defaults %>
<%= csrf_meta_tag %>

如果是这种情况,只需将其包含在 <head> 中布局的标签。

关于ruby-on-rails - Rails form_for :remote=>true is not calling js method,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4227775/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com