jQuery selected-select防止隐藏select

时间:2013-11-19 21:51:52

标签: javascript jquery jquery-chosen

如果没有元素,我想隐藏一个选择选择类的选择,除非它不起作用。

我试过

   $("#Category2").hide();

然后在隐藏尝试之前删除所选的选择类:

 $("#Category2").remove("chosen-select");
$("#Category2").hide();

但这两种方法都不奏效。如果我不这样做:

$(".chosen-select").chosen();

然后选择将隐藏。 Chrome Developer工具控制台中也没有错误。

这是一个已知问题吗?这样做有“技巧”吗?

2 个答案:

答案 0 :(得分:2)

选择创建其他元素 - 尝试$("#Category2_chosen").hide();。 看到它的工作:http://jsfiddle.net/lhoeppner/9UB23/

编辑以获得进一步说明:

尝试使用浏览器的开发工具来检查DOM元素(通常右键单击元素,然后" Inspect element"或类似)。

您会看到,一旦您在DOM元素上调用$(element).chosen(),就会发生以下情况:

  1. 原始元素被隐藏(它仍然在DOM中,但有style="display: none;"
  2. 使用许多其他DOM元素创建所选的下拉窗口小部件,这些元素都被分组为类chosen-container的div和从元素的id派生的id(在此通过附加" _chosen"到它的情况
  3. 下划线没有任何特殊含义,它只是选择创建另一个唯一ID的方式。它可以像追加" -chosen"或" _mycustomsuffix"。

答案 1 :(得分:0)

$("select#chosen-select").hide()

应该这样做。