【问题标题】:jQuery Chosen Plugin - hiding already selected valuesjQuery Chosen Plugin - 隐藏已经选择的值
【发布时间】:2012-05-02 06:51:03
【问题描述】:

希望有人可以提供帮助。我目前有一个用 PHP 组成的选择下拉列表。我正在使用 Chosen 插件将其转换为具有多个选择的漂亮标签云类型设置。

某些选项条目具有“隐藏”类。这些应设置为 display:none

当我随后加载 Chosen 时,任何具有隐藏类的选项条目确实不可见,除非它们被选中,此时它们会显示出来。

有谁知道如何让 Chosen 不显示已选择的某些元素?

http://jsfiddle.net/Hgfub/1/

谢谢

update 更详细地解释我的要求:在 select 元素中隐藏某些选定选项只是为了向用户隐藏该选项,即使我们希望在 php 中传回该值选择后的值。这不是一个安全设置,因为他们仍然会在源代码中看到它,它只是一个视觉上的东西。

【问题讨论】:

  • 如果已经被选中,不应该添加隐藏类不显示元素吗?
  • 你有一些代码吗?也许是一个 jsFiddle,这样我们就可以准确地看到你想要做什么?
  • 抱歉 - 整个星期都不在办公室。我会尽快弄一些代码
  • 这里是 jsFiddle 示例:jsfiddle.net/Hgfub/1
  • 有人吗?我真的很感谢对此提供一些帮助

标签: jquery jquery-chosen


【解决方案1】:

答案已在 GitHub 上提供。

解决方案在这里GitHub response

详细来说,修改 SelectParser 对象以测试添加的参数。你可以这样做。

<option selected data-hidden="true">Some Option</option>

然后在选择这个选项之前测试是否存在:

if (option.text !== "" && option.getAttribute("data-hidden") !== "true") {

您可以在 SelectParser.prototype.add_option 函数中找到该测试。

【讨论】:

  • 只包含链接的答案是considered bad practice。请在此处总结内容(请勿复制/粘贴),以便答案可以独立存在。如果您不这样做,您的答案将面临被删除的风险,尤其是在链接失效的情况下。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-20
  • 1970-01-01
  • 2011-03-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多