Chosen: 选择:准备好不开火

创建于 2014-04-03  ·  14评论  ·  资料来源: harvesthq/chosen

我似乎无法得到选择:准备开火,有人可以确认这种用法是对还是错?

jQuery('.chzn-select').on(' selected :ready ', function () {
jQuery('li').ScrollText();
});

".chzn-select" 是选择在此代码之前绑定的类。

谢谢

最有用的评论

我还遇到了一个问题,其中selected:ready没有触发。

这不起作用:

$('select')
    .chosen()
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    });

但是在实例化 selected 之前绑定事件确实有效:

$('select')
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    })
    .chosen();

所有14条评论

我猜你只是绑定你的监听器太晚了(如果你在选择准备好之后绑定它,它不会看到事件)。 在应用 selected 之前尝试绑定侦听器

啊,那是解决方案的一部分。 在设置它之前,还有一条线将所有事件从选择中解除绑定,从而将其删除。 我相信由于 asp.net 和回发的怪异而添加了 unbind 行。

感谢您的快速回复。

关闭。 :+1:

对不起,另一件事,我应该能够像下面这样在这个函数中获得选择的对象,对吗?

jQuery('.chzn-select').on(' selected :ready ', function (chosen) {
jQuery('li').ScrollText();
});

我正在寻找新元素并在准备好后对其进行处理。 选择的对象是否包含这个? 我看到 obj 有一个结果,但这始终是未定义的。

好的,我再次关闭它。

我发现这永远行不通。 因为我希望将事件应用于所选下拉列表中的每个选项,但问题是在单击下拉列表之前不会创建选项。 因此,我可以将我的代码移动到“ selected:showing_dropdown ”事件中。

事件侦听器的第一个参数始终是事件对象。 参数是第二个参数: http ://harvesthq.github.io/chosen/options.html#triggered -events

啊我错过了第二个参数。 谢谢。

您应该使用委托绑定您的事件(例如已弃用的$().live() ),因为绑定时元素不必出现在页面中:

$('.chosen-select').on('click', 'li', handlerFunction);

更多关于这里的事件委托: https ://learn.jquery.com/events/event-delegation/

我还遇到了一个问题,其中selected:ready没有触发。

这不起作用:

$('select')
    .chosen()
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    });

但是在实例化 selected 之前绑定事件确实有效:

$('select')
    .on('chosen:ready', function(){
        console.log('chosen:ready')
    })
    .chosen();

事件正在触发。 但是在第一种情况下,您的侦听器可能是在触发后注册的

@stof很好的说明,谢谢。

只是想知道为什么列表项是在“showing_dropdown”事件而不是“ready”事件中创建的?

列表项不是在chosen:showing_dropdown中创建的。

chosen:ready在构建结果并且 Chosen 准备接收事件时触发, chosen:showing_dropdown在打开 Chosen 后触发。

那么你想知道的是什么? ;)

在触发下拉菜单打开之前,我的“选择的结果”列表始终为空。 我找到了另一种做我正在做的事情的方法,但对它是如何工作的有点好奇。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

blankhang picture blankhang  ·  7评论

SFPink picture SFPink  ·  4评论

alexfrancavilla picture alexfrancavilla  ·  9评论

vpode picture vpode  ·  5评论

mcclurem picture mcclurem  ·  4评论