gpt4 book ai didi

javascript - 如何在ajax重定向中传递创建表单生成器

转载 作者:行者123 更新时间:2023-12-03 07:00:29 24 4
gpt4 key购买 nike

我有一个更改ajax事件,它会根据所选项目重新加载部分内容,以构建嵌套属性。

重新加载的部分看起来像这样(我已经剪掉了大部分,因为它不重要):

      = f.fields_for :skill_of_objects, @character.skill_of_objects.build do |ff|
%strong
= school_skill.skill.name_pl
= ff.hidden_field :skill_id, value: school_skill.skill.id
= ff.label :value

问题出在 f 构建器上。

我已经做了一些堆栈研究,并基于 >> this question 的最后一个答案我以这样的方式结束:

'<%= form_for [current_user, @character] do |f| %>'
$('#school_skills').html("<%= j render( partial: 'school_skills', locals: {f: f}) %>");
'<% end %>'

但我仍然收到这样的错误:

ActionView::Template::Error (undefined local variable or method `f' for #<#<Class:0xca1eb70>:0xd0811c0>):

如有任何建议,我们将不胜感激:)

最佳答案

我的错误在 js.file

$('#clan_select').html("<%= j render 'character_form_clan' %>");
$('#family_select').html("<%= j render 'character_form_families' %>");
$('#school_select').html("<%= j render 'character_form_schools' %>");
$('#character_honour').html("<%= j render 'character_honour' %>");
$('#character_outfit').html("<%= j render 'character_outfit' %>");
$('#school_skills').html("<%= j render 'school_skills' %>");
$('#character_<%= @old_school_bonus %>').val('2');
$('#character_school_bonus').val('<%= @selected_school.bonus_attr %>');
$('#character_<%= @old_family_bonus %>').val('2');
$('#character_family_bonus').val('<%= @selected_family.bonus_attr %>');
$('#character_<%= @selected_family.bonus_attr %>').val('<%= @increase_val %>');
$('#character_<%= @selected_school.bonus_attr %>').val('<%= @increase_val %>');
'<%= form_for [current_user, @character] do |f| %>'
$('#school_skills').html("<%= j render( partial: 'school_skills', locals: {f: f}) %>");
'<% end %>'

我已经渲染了 school_skills 两次,第二次没有 |f| build 者。在我删除第二个渲染后,一切都很好。

'<%= form_for [current_user, @character] do |f| %>'
$('#school_skills').html("<%= j render( partial: 'school_skills', locals: {f: f}) %>");
'<% end %>'

这部分效果很好,这是我迄今为止找到的最好的方法。

关于javascript - 如何在ajax重定向中传递创建表单生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37084395/

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