Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
Jquery ui Jquery UI自动完成不';在IE中不显示列表_Jquery Ui_Jquery Autocomplete - Fatal编程技术网

Jquery ui Jquery UI自动完成不';在IE中不显示列表

Jquery ui Jquery UI自动完成不';在IE中不显示列表,jquery-ui,jquery-autocomplete,Jquery Ui,Jquery Autocomplete,我正试图按照来自的示例构建一个自动完成输入。到目前为止,这些代码在Opera、Firefox和Chrome中都可以使用,但在IE8和IE9中却不能使用。下面是我的代码和服务器对TestData的响应 在过去的几天里,我们一直在测试这些产品,但都没有成功。希望这里的任何大师都能帮忙 谢谢 <!doctype html> <html lang="en"> <head> <meta charset="utf-8" />

我正试图按照来自的示例构建一个自动完成输入。到目前为止,这些代码在Opera、Firefox和Chrome中都可以使用,但在IE8和IE9中却不能使用。下面是我的代码和服务器对TestData的响应

在过去的几天里,我们一直在测试这些产品,但都没有成功。希望这里的任何大师都能帮忙

谢谢

<!doctype html>
<html lang="en">
    <head>
        <meta charset="utf-8" />
        <title>Test</title>
        <link rel="stylesheet" href="http://code.jquery.com/ui/1.9.1/themes/base/jquery-ui.css" />
        <script src="http://code.jquery.com/jquery-1.8.2.js"></script>
        <script src="http://code.jquery.com/ui/1.9.1/jquery-ui.js"></script>
        <script>
            $(function() {
                $( "#test" ).autocomplete({
                    source: "TestData",
                    minLength: 2
                });
            })
        </script>
    </head>
    <body>
        <div class="ui-widget">
            <input id="test" />
        </div>
    </body>
</html>
响应体

[{"id":"1","value":"a1","label":"a1 test"}]

为了更细粒度地控制web服务实际返回的内容,我建议采用以下方式实现:

$( "#city" ).autocomplete({
            source: function( request, response ) {
                $.ajax({
                    .............
                    success: function( data ) {
                        var transformedData = transformData(data);
                        // feeding back to jquery autocomplete 
                        response( transformedData );
                    }
                });
            });

如果在成功函数中设置断点,您应该能够在调试器中看到从web服务获得的信息。

IE的状态栏上没有错误消息抱歉,我是JQuery新手,尝试了上面的代码,但出现了以下错误:“transformData”未定义。此外,我还将来自服务器的响应放在上面。我从“F12开发者工具”transformData得到的响应是您的函数的位置,以防您需要数据转换。如果数据已经是jquery自动完成格式,只需将数据传递给响应(data);
$( "#city" ).autocomplete({
            source: function( request, response ) {
                $.ajax({
                    .............
                    success: function( data ) {
                        var transformedData = transformData(data);
                        // feeding back to jquery autocomplete 
                        response( transformedData );
                    }
                });
            });