【问题标题】:Bootstrap - Chosen plugin: & in Text changes to &Bootstrap - 选择的插件:文本中的 & 更改为 &
【发布时间】:2013-07-19 18:16:53
【问题描述】:

我正在使用 Twitter Bootstrap v2.1.1 和附带的 Chosen 插件 v0.9.8 并且遇到了一个奇怪的问题,如果我的选择包含“Tom & Jerry”之类的和号,并且我搜索“m”,则选择的选择中的文本会将“&”更改为“&”,而“&”被选中。

这是一个 JSFiddle:http://jsfiddle.net/yakitori/2pszc/

$('#chz-select').chosen({search_contains:true});

尽管 Chosen 插件随 Bootstrap 一起提供,但似乎存在一些奇怪的冲突。 如果我从 JSFiddle 中删除 bootstrap.min.js,则“&”不会被转换并且搜索工作正常。还有其他人遇到这个问题吗?有人知道怎么解决吗?

【问题讨论】:

  • 选择自带Bootstrap? Bootstrap 有自己的 typeahead 和 dropowns。在任何情况下。 Select2 是 Chosen 的一个更高级的分支。强烈推荐。

标签: twitter-bootstrap jquery-chosen


【解决方案1】:

我会切换到 Select2,它是 Chosen 的一个分支,具有更好的 API:

http://jsfiddle.net/isherwood/2pszc/1/

$('#chz-select').select2();

【讨论】:

  • 这看起来很有希望,我会检查一下。谢谢!
【解决方案2】:

要解决此问题,删除 search_contains:true 使其变为 search_contains:false。希望您不需要“包含”搜索。

$('#chz-select').chosen({search_contains:false});

或者干脆拥有

$('#chz-select').chosen();

参考这个answer,更好地在您的HTML 中使用& 编码您的& 符号

这是您的 html 编码 &&

<select id="chz-select" data-placeholder="Select...">
    <option value="1">Tom &amp; Jerry</option>
    <option value="2">Andy &amp; Jamie</option>
    <option value="3">Mark &amp; Amy</option>
</select>

Working Fiddle

【讨论】:

  • 谢谢你,但不幸的是我们需要 search_contains:true。
猜你喜欢
  • 2021-04-22
  • 2012-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-26
  • 2019-02-22
  • 2019-02-27
相关资源
最近更新 更多