如何使用mysql数据库将下拉选择更改为typeahead?

时间:2012-08-04 08:52:51

标签: php mysql typeahead

我想将此代码(下拉选择课程)更改为预先输入,所以我只需要输入几个单词,然后就会建议。

<TD width="112"><INPUT type="checkbox" name="chk[]"/></TD>
        <TD width="472">
            <SELECT name="course[]">
                <?php
                  $sql = "select * from tt_course";
                  $result = mysql_query($sql);
                  while($rs = mysql_fetch_assoc($result))
                    {
                        $select="";
                        echo "<option value=\"".$rs['course_id']."\" ".$select.">".$rs['course_name']."</option>";
                    }
                  ?>
            </SELECT>
        </TD>

1 个答案:

答案 0 :(得分:0)

看看http://jqueryui.com/demos/autocomplete/ 它简单易用,可以达到目的。您可以创建一个值数组并将其提供给自动完成,也可以让它调用您的php页面并解析返回的JSON数据。

正如所承诺的,这是一个让你前进的示例代码。请注意,此代码使用本地javascript变量为自动填充框准备建议。您可以轻松地更新它以从您的php页面查找JSON数据,我可以很容易地让你做到这一点,但目的是帮助你学习所以我认为这样对你来说会更好,这样你就可以看到它是如何工作的然后根据您的需要更新它。在这里,你可以简单地复制粘贴此代码并看到它正在运行

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/black-tie/jquery-ui.css" type="text/css" />
    <script src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'></script>
    <script src='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js'></script>
    <script>
    $(document).ready(function() {
        $( "#AC" ).autocomplete({
            source: programmingLang
        });
    });
    var programmingLang = ["ActionScript","AppleScript","Asp","BASIC","C","C++",
    "Clojure","COBOL","ColdFusion","Erlang","Fortran","Groovy","Haskell",
    "Java","JavaScript","Lisp","Perl","PHP","Python","Ruby","Scala","Scheme"];
    </script>
</head>
<body>
    <input type=text name="AC" id="AC">
</body>
</html>