【问题标题】:How to update a checkbox/radio button with rails3-jquery-autocomplete如何使用 rails3-jquery-autocomplete 更新复选框/单选按钮
【发布时间】:2012-06-14 11:32:11
【问题描述】:

我正在使用 rails3-jquery-autocomplete gem 从数据库中获取自动完成项目以及一些我需要预先填写表单的额外数据。

autocomplete :link, :name, :extra_data => [:url, :is_full_screen, :is_auto_trigger, :is_ad, :is_ecommerce]

url 之外的所有内容都是布尔标志(用户首选项),用于选中/取消选中复选框和选择表单中的单选按钮。尽管 gem 更新了一个文本字段,但它不会自动更新复选框和单选按钮。我已经在表单视图中指定了:update_elements:

<%= f.autocomplete_field :name, autocomplete_link_path, :update_elements => {:url => '#link_url', :is_auto_trigger => '#link_is_auto_trigger'}

我该怎么做?我尝试探索在选择选项时触发的 railsAutocomplete.select javascript 事件,以执行自定义 js 以选择复选框和单选按钮,但是如何在该事件侦听器中获取数据(来自 sql 查询)?他们是更简单的方法吗?

【问题讨论】:

  • 你解决了吗?我想知道如何让它根据一些extra_data 从下拉列表中选择一个值。
  • 呃,没关系,在我纠正错字后,从下拉列表中自动选择有效。我可以看到复选框和单选按钮将是一个更大的挑战。

标签: javascript ruby-on-rails ruby-on-rails-3 autocomplete


【解决方案1】:

我通过执行自定义 javascript 在选择自动完成选项之一时更新复选框/收音机来解决此问题。当从自动完成下拉菜单中选择一个值时,会在输入字段上触发一个名为 railsAutocomplete.select 的 javascript 事件。 data.item 包含您从数据库中获取的所有数据(包括额外数据):

    $('#link_name').bind('railsAutocomplete.select', function(event, data){
      // Custom JS to select radio/checkbox, or do any other complex task
      select_linktype(data.item.linktype);
      select_tracking(data.item.is_ad);
    });

【讨论】:

    猜你喜欢
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-03
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    • 2018-11-06
    相关资源
    最近更新 更多