Jquery动态组合框选项需要多次单击才能在IE8上显示

Jquery动态组合框选项需要多次单击才能在IE8上显示,jquery,Jquery,当用户单击div中的combobox时,我正在向数据库发出ajax调用。我正在尝试使用divs click事件动态填充我的combobox。我在IE8上遇到了一个问题(ff工作正常),当单击从数据库获取数据时,组合框失去焦点,我必须再次单击组合框进行选择。我正试图找出这一切发生的原因。谢谢你的帮助。这是表的td段中的div <div class="catagory"><select class="catagorycombo"><option value="3456"

当用户单击div中的combobox时,我正在向数据库发出ajax调用。我正在尝试使用divs click事件动态填充我的combobox。我在IE8上遇到了一个问题(ff工作正常),当单击从数据库获取数据时,组合框失去焦点,我必须再次单击组合框进行选择。我正试图找出这一切发生的原因。谢谢你的帮助。这是表的td段中的div

<div class="catagory"><select class="catagorycombo"><option value="3456">Select  All</option></select></div>


<script type="text/javascript">

$('body').on('click', '.catagory', function(e){


var comboboxTest= $(this).parent().next("td").find('.testcombo'); 
var combobox =   $(this).find('.catagorycombo');  



var url = '<%= Url.Action("GetCatagoryListDropDown", "Document") %>';
var contextKey=combobox[0].options[0].value;
var text=combobox[0].options[0].text;
var length=combobox.prop('options').length;

if(text=="Select All" && length<=1)
{
           combobox.empty();

           combobox.append("<option value=\"" + contextKey + "\">Select All</option>");
           combobox.append("<option value=\"loading\">Loading...</option>");

      $.ajax({
        type: "POST",
        url: url,
        data: { contextKey:contextKey },
        success: function(data, textStatus, jqXHR) {
                    $.each(data, function(i, el) {
                       // combobox.append(new Option(el["Text"],el["Value"]));
                         combobox.("<option value=\"" + el["Value"] + "\">" +   el["Text"] + "</option>");

                    });

                  combobox.find('option[value=loading]').remove();

                }
    });

    }
    else
    {
           return false;
    }
});
全选
$('body')。关于('click','catogory',函数(e){
var comboboxTest=$(this.parent().next(“td”).find('.testcombo');
var combobox=$(this.find('.catagorycombo');
var url='';
var contextKey=组合框[0]。选项[0]。值;
var text=组合框[0]。选项[0]。文本;
var length=combobox.prop('options').length;

如果(text==“Select All”&&length我不确定在您更改其数据提供程序时是否可以保持下拉列表处于打开状态


加载数据后,您可能会打开下拉列表,但根据此处的讨论,这可能不容易实现。但是,请查看是否有任何解决方法适合您的需要。

我不确定在更改其数据提供程序时是否可以保持下拉列表的打开状态


加载数据后,您可能会打开下拉列表,但根据此处的讨论,这可能不容易实现。但是,请查看是否有任何解决方法适合您的需要。

很可能是。您是否确实看到了这一点?我使用了您提供的第一个链接作为起点,并成功地解决了此问题o解决我的问题。当点击组合框时,它仍然会变成一个列表框(因为我正在修改大小)回到blur上的combobox,这对用户来说可能很奇怪。我必须解决这个问题,直到我被调用为止。谢谢!很可能是的。你真的看到了吗?我使用了你提供的第一个链接作为起点,并设法解决了我的问题。当单击combobox时,它仍然会变成一个列表框(因为我正在修改大小)然后返回到blur上的combobox,这对用户来说可能会很奇怪。我必须解决这个问题,直到我被调用为止。谢谢!