在没有jquery模态对话框的情况下,select2插件可以正常工作

前端之家收集整理的这篇文章主要介绍了在没有jquery模态对话框的情况下,select2插件可以正常工作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在jquery对话框中使用select2插件,但是不行.当下降时,焦点移动到输入控件,但立即离开它,不允许我输入任何内容.

这是HTML:

<div id="asignar_servicio" title="Asignar servicios a usuarios">
    <input type="hidden" class="bigdrop" id="a_per_id" />
</div>

这是JavaScript代码

$( "#asignar_servicio" ).dialog({
            autoOpen: false,height: 500,width: 450,modal: true,buttons: {
                "Cancelar": function () {
                    $('#asignar_servicio').dialog('close');
                }
            }
        });
        $("#a_per_id").select2({
            placeholder: "Busque un funcionario",width: 400,minimumInputLength: 4,ajax: {
                url: "@Url.Action("Search","Personal")",dataType: 'json',data: function (term,page) {
                    return {
                        q: term,page_limit: 10,};
                },results: function (data,page) {
                    return { results: data.results };
                }
            }
        }).on("change",function (e) {
            var texto = $('lista_personal_text').val().replace(/ /g,'');
            if (texto != '')
                texto += ',';
            texto += e.added.text;

            var ids = $('lista_personal_id').val().replace(/ /g,'');
            if (ids != '')
                ids += ',';
            ids += e.added.id;
        });

我在其他页面中有相同的代码,它的工作原理.

任何帮助将不胜感激,

谢谢
海梅

解决方法

jstuardo的链接很好,但是在该页面上有很多可以筛选.以下是您需要的代码
$.ui.dialog.prototype._allowInteraction = function(e) {
    return !!$(e.target).closest('.ui-dialog,.ui-datepicker,.select2-drop').length;
};

只需将其添加到您设置select2下拉列表的任何位置即可.

原文链接:https://www.f2er.com/jquery/180596.html

猜你在找的jQuery相关文章