gpt4 book ai didi

javascript - 使用 jquery 部分渲染时未定义的局部变量或方法 `f'

转载 作者:行者123 更新时间:2023-12-03 02:45:59 25 4
gpt4 key购买 nike

error

当单击按钮时..必须显示部分内容。

$('#info_fields').html( '<%= render partial: "investor_info_fields", locals: { f: f } %>');

部分形式。

<%= f.fields_for :investor_infos do |f| %>
<div class="nested-fields">
<%= f.label :name %> <br>
<%= f.text_field :name, label: "invested companies", class: "input-md form-control mb-20" %>

<%= f.label :investment_size_id, "Investment size" %> <strong> *</strong><br>
<%= f.collection_select :investment_size_id, InvestmentSize.all, :id, :size, {}, {class: "input-md form-control mb-20 startup_info_required"} %><br>


<%= f.label :investment_time_id, "Investment time" %> <strong> *</strong><br>
<%= f.collection_select :investment_time_id, InvestmentTime.all, :id, :time, {}, {class: "input-md form-control mb-20 startup_info_required"} %><br>
</div>
<% end %>

Jquery:

$(".my-class").click(function() {
var whut=$(this).val();
($(this).val() == 4) {

$('#info_fields').html( '<%= render partial: "investor_info_fields", locals: { f: f } %>');

}
});

图像:

最佳答案

这里您必须进行以下两项更改:

  1. 正如我在评论中提到的,如果您已经编写了脚本在 form_tag 内,它不起作用。所以把你的脚本放在 form_tag 中。

  2. 替换以下行:

    $('#info_fields').html( '<%= render partial:
    "investor_info_fields", locals: { f: f } %>')

    与:

    $('#info_fields').html( '<%= j render partial:
    "investor_info_fields", locals: { f: f } %>')

这里我添加了一个j (又名 escape_javascript)在 render 前面如果局部中有一些 ruby​​ 代码,而不是简单的 html 代码,则关键字可以帮助您从 javascript 渲染局部。

关于javascript - 使用 jquery 部分渲染时未定义的局部变量或方法 `f',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48088984/

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