jQuery自动完成中的两个字段

时间:2012-03-22 13:16:19

标签: jquery ruby-on-rails ruby-on-rails-3.1

如何使用jQuery自动完成插件链接两个输入字段?例如,我有两个字段:City和Street。因此,当我选择某个城市时,我希望在街道上看到所选城市的街道。

1 个答案:

答案 0 :(得分:0)

我希望街道自动填充数据源将城市字段的值作为参数提交给街道数据源。

我的jquery调用会从city_field获取值:

$(function () {  
    $('#street_field').autocomplete({source: '/autocomplete/street?city="' + $(this).siblings('input[id=city_field]').val() + '"'});
});

在我的自动完成控制器中(提供所有自动填充数据的内容):

class AutocompleteController < ApplicationController
  def street
    if params[:term]
      like= "%".concat(params[:term].concat("%"))
      streets = Street.where("city like ? and name like ?", params[:city], like)
    else
      streets = Street.where("city like ?", params[:city])
    end
    list = streets.map {|u| Hash[ id: u.id, label: u.name, name: u.name]}
    render json: list
  end
end

如果这不是您想要的,请发布一些示例代码,以帮助我们更好地了解您的想法。