如何让jQuery选择插件折叠选择框?

时间:2013-07-15 18:13:27

标签: jquery jquery-chosen

也许这不是所选插件的问题,但这是我遇到问题的地方。选择的插件可以很好地绘制选择框。问题是,如果完全显示选择框并单击选择框中的元素,则不会折叠选择。完全显示我的意思是,当显示该部分时,选择看起来好像已经被点击并且所有选项都是可见的并且不会消失。

任何人都知道可能导致这种情况的原因是什么?

使用.on()。

在页面加载后加载此模板

加载的模板底部有一个块,它正在调用selected()函数 元素。

<script>
    (function() {
        $('.chzn-select').chosen();
    )()
</script>

在html中,选择框定义为:

 <select id="product_id" class="chzn-select"  onchange="update_values()">

我并不认为这与所选插件有关。我从文档中尝试了很多不同的参数,没有任何改变它。

2 个答案:

答案 0 :(得分:1)

不要使用内联onchange事件。如果你已经使用了jquery,你应该使用它来添加你的on change事件。

话虽如此,我想知道更改事件是否存在冲突,因为插件在元素上设置了自己的方式。需要看到更多代码才能确定。

尝试做类似的事情......

$(".chzn-select").chosen().change(function() {
    alert('change happened');
    //to close the chosen (not pretty but will work. note this will close all open chosens)
    $('.chzn-container-active').trigger('click')
});

答案 1 :(得分:0)

我遇到了同样的问题,其中选项向下扩展到页面,并且在我选择之后不会消失。创建了最简单的html页面后仍然遇到问题,我意识到我没有链接到zip.c文件中包含的chosen.css:

<link rel="stylesheet" type="text/css" href="/scripts/chosen/chosen.css">

只要我将chosen.css和zip文件中的所有其他文件复制到我的“scripts / selected”文件夹并将上面的链接添加到selected.css,就会像演示一样工作。