我认为您的问题与前端开发更相关,这就是为什么我认为您应该考虑使用 javascript 解决方案来实现此功能。
您可以使用 JQuery 自动完成插件和一个 html 字段。
你可以在这里找到一个例子:JQuery Autocomplete
并链接来自将查询数据库的 PHP 脚本的 JSON 输出。
在您的字段中至少有 2/3 个字符后,您将限制请求,并在文本字段中最后一次输入后一秒钟刷新它。
您可以在这里找到适合您需要的好教程:
使用 PHP/MySQL 的 JQuery 自动完成教程
编辑:
您可以实现的结果在这里(Javascript 代码):
$(function() {
var words = [
{
value: "doe",
label: "doe",
desc: "additional description for doe",
},
{
value: "doi",
label: "doi",
desc: "additional description for doi",
},
{
value: "dog",
label: "dog",
desc: "additional description for dog",
},
{
value: "dog catcher",
label: "dog catcher",
desc: "additional description for dog catcher",
},
{
value: "dog sitter",
label: "dog sitter",
desc: "additional description for dog sitter",
}
];
$( "#word" ).autocomplete({
minLength: 0,
source: words,
focus: function( event, ui ) {
$( "#word" ).val( ui.item.label );
return false;
},
select: function( event, ui ) {
$( "#word" ).val( ui.item.label );
$( "#word-id" ).val( ui.item.value );
$( "#word-description" ).html( ui.item.desc )
return false;
}
})
.data( "ui-autocomplete" )._renderItem = function( ul, item ) {
return $( "<li>" )
.append( "<a>" + item.label + "<br>" + item.desc + "</a>" )
.appendTo( ul );
};
});
使用自定义 JQuery 自动完成来工作 JSFiddle