3

我正在使用 selected-rails gem 并取得了巨大的成功。但是,我想自定义占位符文本。从 gem 文档看来,咖啡脚本文件中应该有以下内容

  $('.chzn-select').chosen
    allow_single_deselect: true
    no_results_text: 'No results matched'

当我使用此代码时,我可以更改 deslectbehaviour,因此正在调用脚本,但占位符文本不会更改

有没有人经历过类似的行为?

4

6 回答 6

9

你可以设置你的data-placeholder属性,Chosen 会自动解析它:

:data => {:placeholder => 'User Name'}

于 2014-02-27T21:39:11.413 回答
7

我找到了一个更好的解决方案。

在此https://github.com/harvesthq/chosen/issues/176之后,可以使用 .attr("data-placeholder", "my message here...").chosen(); 而不是 .data()。

于 2013-08-08T17:43:40.660 回答
1

这里正确的解决方案是在顶部放置一个空的选项元素。

于 2014-08-09T06:58:43.787 回答
1

要在咖啡脚本文件中设置默认文本,请使用:

$('.chzn-select').chosen allow_single_deselect: true no_results_text: 'No results matched', placeholder_text_single: 'Please select an option', placeholder_text_multiple: 'Please select some options'

适用于我选择的rails 1.5.2

于 2017-04-15T00:44:15.733 回答
0

文档在“默认文本支持”部分中说您应该data-placeholder在选择元素上使用属性。我还没有测试过它,我也很好奇如何从脚本而不是标记中做到这一点。

编辑: 我刚刚找到了一个解决方案:--从脚本中简单地覆盖数据属性(非常明显:))。

于 2013-04-27T13:23:56.657 回答
0

轨道 5 - 2018

此代码适用于 simple_form gem:

<%= f.input :tag, as: :select, collection: Tag.all, input_html: {class: 'chosen-select', :data => {:placeholder => "your custom placeholder"}, multiple: true} %>
于 2018-10-17T15:12:39.523 回答