jquery – 选择后触发一个动作select2

im使用select2 libary为我的搜索http://ivaynberg.github.io/select2/
有没有办法在选择搜索结果后触发一个动作?例如打开弹出窗口或简单的js警报。
$("#e6").select2({
    placeholder: "Enter an item id please",minimumInputLength: 1,ajax: { // instead of writing the function to execute the request we use Select2's convenient helper
        url: "index.PHP?r=sia/searchresults",dataType: 'jsonp',quietMillis: 3000,data: function (term,page) {
        return {
            q: term,// search term
            page_limit: 10,id: 10
            };
        },results: function (data,page) { // parse the results into the format expected by Select2.
            // since we are using custom formatting functions we do not need to alter remote JSON data
            return {results: data};
        },},formatResult: movieFormatResult,// omitted for brevity,see the source of this page
    formatSelection: movieFormatSelection,see the source of this page
    dropdownCssClass: "bigdrop",// apply css that makes the dropdown taller
    escapeMarkup: function (m) { return m; } // we do not want to escape markup since we are displaying html in results
});

解决方法

请参阅 documentationfurther details section on events中的事件部分。

根据版本,下面的代码片段应该给你所需的事件,或者只是用“更改”替换“select2-selection”。

版本4.0

事件现在采用格式:select2:选择(而不是select2选择)

感谢snakey的通知,这已更改为4.0

$('#yourselect').on("select2:selecting",function(e) { 
   // what you would like to happen
});

版本4.0之前

$('#yourselect').on("select2-selecting",function(e) { 
   // what you would like to happen
});

为了澄清,select2选择的文档:

select2-selecting
Fired when a choice is being selected in the
dropdown,but before any modification has been made to the selection.
This event is used to allow the user to reject selection by calling
event.preventDefault()

而变化有:

change
Fired when selection is changed.

因此,更改可能更适合您的需要,这取决于您是要选择完成,然后执行您的事件,或潜在地阻止更改。

相关文章

jQuery插件的种类 1、封装对象方法 这种插件是将对象方法封装起来,用于对通过选择器获取的jQuery对象进...
扩展jQuery插件和方法的作用是非常强大的,它可以节省大量开发时间。 入门 编写一个jQuery插件开始于给...
最近项目中需要实现3D图片层叠旋转木马切换的效果,于是用到了jquery.roundabout.js。 兼容性如图: ht...
一、什么是deferred对象? 开发网站的过程中,我们经常遇到某些耗时很长的javascript操作。其中,既有异...
AMD 模块 AMD(异步模块定义,Asynchronous Module Definition)格式总体的目标是为现在的开发者提供一...