jQuery UI自动完成功能无法在IE中运行

Pet*_*cco 4 javascript jquery jquery-ui jquery-ui-autocomplete

我在jQuery UI 1.8rc3中有新的自动完成小部件在Firefox中运行良好.它在IE中根本不起作用.有人可以帮我吗?

HTML:

<input type="text" id="ctrSearch" size="30">
<input type="hidden" id="ctrId">
Run Code Online (Sandbox Code Playgroud)

使用Javascript:

$("#ctrSearch").autocomplete({
    source: "ctrSearch.do",
    minLength: 3,
    focus: function(event, ui){
        $('#ctrSearch').val(ui.item.ctrLastName + ", " + ui.item.ctrFirstName);
        return false;
    },
    select: function(event, ui){
        $('#ctrId').val(ui.item.ctrId);
        return false;
    }
});
Run Code Online (Sandbox Code Playgroud)

结果(IE 8):

红色框是<ul>jQuery创建的元素.

http://i40.tinypic.com/6q9quu.jpg

我也得到这个错误:

Line: 116
Error: Invalid argument.

当我在IE8脚本调试器中打开它时,它突出显示f[b]=d在jquery.min.js的第116行.请注意,我正在使用托管在Google服务器上的jQuery版本1.4.2(https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js).

我已经尝试删除一些选项,但即使我.autocomplete()没有选项调用,或只使用源选项,我仍然得到相同的结果.

它再一次在Firefox中运行,但在IE中却没有.有什么建议?

谢谢.

更新: 正如所建议的,我使用了jquery.js(而不是jquery.min.js)并在第4618行得到了错误.请参阅下面的jitter答案.请参阅几天前发布的其他Stack Overflow问题.

更新2: 我发现jQuery UI自动完成使用无效属性this.element.height,应该使用该函数this.element.height()

jit*_*ter 5

如果我理解这一点,你所引用的行似乎是函数中jquery.1.4.2.js中的第4618行style.这只能意味着Autocompleter插件尝试设置IE8不理解的样式值,或者不允许以这种方式访问​​/更改.

style[ name ] = value; //style == elem.style from the passed in element
Run Code Online (Sandbox Code Playgroud)