javascript 如何在Ruby活动管理表单中动态获取输入字段的值

llmtgqce  于 2023-02-28  发布在  Java
关注(0)|答案(1)|浏览(109)

我在rails中有这个表单,我正在使用active admin表单来获取输入。我想只根据type_dropdown中选择的值来显示state_value输入或zipcode_value输入。

active_admin_form_for('', :post) do |f|
      f.inputs do
        f.input :type_dropdown, as: :select, collection: %w(state zipcode), name: :type_dropdown, required: true, include_hidden: false
        f.input :state_value, name: :state_value, required: true. #I want this input field to show only if state is selected in dropdown above, otherwise I want it hidden
        f.input :zipcode_value, name: :zipcode_value, required: true
      end
      f.actions do
        f.submit "Submit"
      end
    end
end
busg9geu

busg9geu1#

在看了很多答案之后,我们找到了这个解决方案,我们必须在这里使用jquery。我们必须在app/admin/assets/active_admin. js中编写我们的jquery代码。
我在active_admin. js中的jquery代码如下所示-

$(document).on("change", "select.type-dropdown", function (){
     let dropdown_value = $(this).val()
     $('.state-value').val(dropdown_value)
 })

我的表格现在看起来像这样-

active_admin_form_for('', :post) do |f|
      f.inputs do
        f.input :type_dropdown, as: :select, collection: %w(state zipcode), name: :type_dropdown, required: true, include_hidden: false, input_html: {class: "type-dropdown"}
        f.input :state_value, name: :state_value, required: true, input_html: {class: "state-value"}
        f.input :zipcode_value, name: :zipcode_value, required: true
      end
      f.actions do
        f.submit "Submit"
      end
    end

希望这对如何将jquery包含在主动管理中有所帮助。

相关问题