Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQueryUIAutoComplete在Firefox中工作,但在IE中不工作_Javascript_Jquery_Jquery Ui_Jquery Ui Autocomplete - Fatal编程技术网

Javascript jQueryUIAutoComplete在Firefox中工作,但在IE中不工作

Javascript jQueryUIAutoComplete在Firefox中工作,但在IE中不工作,javascript,jquery,jquery-ui,jquery-ui-autocomplete,Javascript,Jquery,Jquery Ui,Jquery Ui Autocomplete,我已经在jQueryUI1.8rc3中安装了新的自动完成小部件,它在Firefox中运行得非常好。这在IE中根本不起作用。有人能帮我吗 HTML: <input type="text" id="ctrSearch" size="30"> <input type="hidden" id="ctrId"> $("#ctrSearch").autocomplete({ source: "ctrSearch.do", minLength: 3, focu

我已经在jQueryUI1.8rc3中安装了新的自动完成小部件,它在Firefox中运行得非常好。这在IE中根本不起作用。有人能帮我吗

HTML:

<input type="text" id="ctrSearch" size="30">
<input type="hidden" id="ctrId">
$("#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;
    }
});
结果(即8):

<input type="text" id="ctrSearch" size="30">
<input type="hidden" id="ctrId">
$("#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;
    }
});
红色框是jQuery创建的
元素

我也得到了这个错误:

Line: 116 Error: Invalid argument. 线路:116 错误:参数无效。 当我在IE8脚本调试器中打开它时,它在jquery.min.js的第116行高亮显示
f[b]=d
。注意,我使用的是托管在Google服务器()上的jQuery版本1.4.2

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

再一次,它在Firefox中工作,但在IE中不工作。有什么建议吗

谢谢

更新:根据建议,我使用了jquery.js(而不是jquery.min.js)并在第4618行得到了错误。见下面的jitter的答案。请看这是几天前发布的


更新2:我发现jQuery UI autocomplete使用了一个无效属性
this.element.height
,当它应该使用函数
this.element.height()

如果我理解正确,那么您所指的行似乎是
style
函数中的第4618行。这只能意味着Autocompleter插件试图设置IE8不理解或不允许以这种方式访问/更改的样式值

style[ name ] = value; //style == elem.style from the passed in element

我在同一行上有完全相同的错误,但完全不同的交易。也就是说,我没有做任何与自动完成有关的事情;相反,我的出现是因为我在jQuery中尝试这个

$(this).css('background', 'rgba(64,255,64,.4)');
jQuery尝试执行的操作

style [ 'background' ] = 'rgba(64,255,64,.4)';
当然,它失败了,因为rgba不是Internet Explorer支持的CSS值。所以你不是唯一一个这样做的人,但就我而言,我只是做错了。适当的jQuery语法如下所示

$(this).css({backgroundColor: '#40ff40', opacity: .4});
这是我的消息来源


彼得。不要使用jQuery的简化版本进行调试。如果换成jquery.js,可能会有比jquery.min.js第116行的“f[b]=d”更多的信息可用。spender是正确的。在开发缩小版和完整版jQuery以获得更好的调试信息的过程中,如果我有时间,我明天可能会对此进行研究。现在没有IE8,谢谢。期待您的输入。我发现jQuery UI autocomplete使用了一个无效的属性this.element.height,而它应该使用函数this.element.height(),很好,您已经解决了这个问题。你在jQuery UI问题跟踪器上做了错误报告了吗?我在第4618行也收到了一个错误。。。其中“value”为空。这种情况发生在.effect('highlight',{},1000)中