当前位置: 首页 > 面试题库 >

jQuery自动完成Mysql PHP

逄兴昌
2023-03-14
问题内容

嗨,有人可以看一看,让我知道我要去哪里了。我正在尝试使jQuery UI自动完成工作。这是我的代码:这是search.php

include "db_connect.php";
$search = $_GET['term'];    
    $result = mysql_query("SELECT Title FROM `movie` WHERE `Title` LIKE '%$search%' ORDER BY Title ASC") or die('Something went wrong');
    $rows = array();
    while ($row = mysql_fetch_assoc($result)){
        $rows[] = $row;

    }
print json_encode($rows);
?>

这是我的JavaScript内联脚本

<script type="text/javascript">
    $(document).ready(function()
    {
        $('#auto').autocomplete(
        {
            source: "./search.php",
            minLength: 3
        });
    });
</script>

这是“汽车”股利

<div id="searchTxtFieldDiv">
<p><input type="text" id="auto" /></p>
</div>

当我使用Firebug查看呼叫时,我看到search.php返回了

[{"Title":"Sin City"}]

jQuery只是显示未定义的任何想法?


问题答案:

看看jquery
ui自动完成文档
。您返回的JSON与自动完成功能所寻找的不匹配。您返回的对象必须具有名为label或value(或两者)的属性。

您可以尝试以下选项:

选项1:更改返回的JSON

更改返回的JSON以包括标签/值属性,例如:

[{"label":"Sin City"}]

从示例中,它似乎还使用了id属性。我相信以上是自动完成显示值列表的最低要求。我认为您还可以返回一个字符串数组,它将以与上述完全相同的方式呈现它。

[ "Sin City", "Etc" ]

选项2:更改private _render函数

更改私有_renderItem函数的自动完成功能,以使用您的自定义属性,如以下自动完成示例所示(未测试):

$( "#project" ).autocomplete({
    source: "./search.php",
    minLength: 3    
})
.data( "autocomplete" )._renderItem = function( ul, item ) {
    return $( "<li></li>" )
   .data( "item.autocomplete", item )
   .append( item.Title )
   .appendTo( ul );
};

这有点灵活,但恕我直言。



 类似资料:
  • 问题内容: 任何人都可以给我完整的步骤来使用jquery-ui自动完成功能。我正在使用grails 2.0.1。 我需要一个完整的示例,包括控制器和视图的代码。 提前致谢。 问题答案: 首先,您需要将main.gsp(在头部)添加到行中 插件将自动下载。 对于完整的示例,您可以使用此链接 http://jay-chandran.blogspot.com/2011/09/using-grails-w

  • 问题内容: 无法使jQuery自动完成小部件与Flask框架一起使用。(http://jqueryui.com/autocomplete/#remote这里是一个示例) 在manage.py中,我得到了以下内容: 我的index.html文件: 似乎firefox中的开发工具不会返回任何错误。终端返回以下内容: 小部件不起作用。由于我对jQuery知之甚少,所以我不知道是什么原因导致了问题。有人可

  • 我正在使用Laravel。自动完成速度很慢。我知道这可能是因为我的数据库有很多信息。我在表中总共有38432行。但是我确信脸书、推特等比我拥有更多。 如何加快自动完成的速度? 这是我的代码: JavaScript:

  • 问题内容: 即时通讯在JSON中获取响应,但这不会解析JSON响应。我在做什么错?我在doc http://docs.jquery.com/Plugins/Autocomplete上找不到任何内容 问题答案: 检查dataType和parse选项。

  • 问题内容: 好吧,我一直在为此绞尽脑汁(这太糟糕了),但是我一直尝试阅读我所能而且仍然无法使它起作用的内容。 试图用jQuery UI做自动完成 我的json看起来像这样 我正在尝试将此信息用作自动完成的来源。我得到的响应对象很好,我很难以正确的格式获得它,因此我可以将“ ”放在与“值”相关联的隐藏字段中,该字段需要显示为“值”的一部分落下。 尝试了一百万种不同的方法,但最近的尝试却在下面 请多谢

  • 问题内容: 我在页面上使用AjgularJS,并想添加一个字段以使用来自jqueryui的自动完成功能,并且自动完成功能不会触发ajax调用。 我已经在没有angular的页面上测试了脚本(ng-app和ng- controller),并且效果很好,但是当我将脚本放在带有angularjs的页面上时,它停止工作。 任何想法? jQuery脚本: 有趣的提示:当我在Chrome检查器上调用脚本时,自