试图让Jquery在Rails和ActiveAdmin中使用动态选择表单

Trying to get Jquery working with dynamic select forms in Rails and Active Admin

本文关键字:动态 表单 选择 ActiveAdmin Jquery Rails      更新时间:2023-09-26

我正在尝试基于另一个来更新一个选择框。。

在我的活动管理资源中,我只为一些测试数据做了以下操作:

controller do
  def getcols
    list = new Hash
    list = {"OPTION1" => "OPTION1", "OPTION2" => "OPTION2"}
    list.to_json
  end
end

在active_admin.js中,我有以下

$('#worksheet_type').change(function() {
  $.post("/admin/getmanifestcols/", { ws_type: $(this).val() }, function(data) {
            populateDropdown($("#column_0"), data);
        });
});
function populateDropdown(select, data) {
 select.html('');
    alert('hi');
    $.each(data, function(id, option) {
       select.append($('<option></option>').val(option.value).html(option.name));
    });       
 }

上面的工作原理是,当我的主选择框更改时,jquery会被调用,我甚至会调用"hi"的警报框。但是,它并没有用我的测试OPTION1和OPTION2数据替换选择框的内容。

我认为我传递的JSON是错误的或其他什么,或者它没有被读取。

我错过了什么?

在我看来,您似乎没有正确地迭代地图。

关于:

$.each(data, function(value, name) {
   select.append($('<option></option>').val(value).html(name));
});