任何不选择已在令牌输入中选择的名称的想法

Any idea not to select the name that is already chosen in token input?

本文关键字:选择 输入 令牌 任何不      更新时间:2023-09-26

有没有办法不选择在令牌输入中已经选择的名称?例如,在第一次搜索m时,我选择了芒果。下次搜索m时不应显示芒果,因为芒果已被选中。有什么想法吗?

 <%= f.text_field :plan_tokens, data: {load: @customer.plans} %>

我的js是这样的jQuery->

 $('#customer_plan_tokens').tokenInput '/plans.json'
    theme: 'facebook'
    prePopulate: $('#customer_plan_tokens').data('load')

防止重复:正确。我确实试过了,但出现了错误!

我从研究这个

http://railscasts.com/episodes/258-token-fields

http://railscasts.com/episodes/258-token-fields-revised


当您在JavaScript中初始化标记输入时,您可以添加preventDuplicates: true,这将防止选择重复项,但它们仍然会显示在结果中(演示)。

所以类似于:

$(...).tokenInput("url", { preventDuplicates: true, otherOptionsHere });

如果您根本不想显示它们,那么可能可以为onResult回调编写一些代码,检查字段的值并删除已经存在的值。

编辑:由于您使用CoffeeScript,请尝试

$('#customer_plan_tokens').tokenInput '/plans.json'
   theme: 'facebook'
   prePopulate: $('#customer_plan_tokens').data('load')
   preventDuplicates: true