我试着搜索答案,但我不知道要使用的确切术语。如果这个问题以前被问过(很多),我很抱歉。
我有一个HTML/PHP表单,用户需要通过下拉字段输入客户端名称。我想对这个字段做的是在用户输入时限制选择。假设我想输入John Smith的名字,它显示为"Smith,John",我希望用户能够开始键入姓氏,表单"自动"选择最接近已经键入的名字。因此,在本例中,我会键入"Smit",下拉列表仅限于所有以"Smit’开头的名称。
我知道HTML和PHP,但Java/jQuery/AJAX/等对我来说是新的,我真的不知道从哪里/如何开始;-)
有人能给我指正确的方向吗?
编辑:我尝试过javascript自动完成功能。给出的例子似乎效果很好,尽管它现在列出了一个丑陋的匹配单词列表。
我仍然不确定的是如何在那里获得PHP数组。我试着按照void的建议去做,但没有成功。这是我现在的代码:
<script>
var client= $.parseJSON('<?php echo json_encode($clname); ?>);
$(function(){
$( "#tags" ).autocomplete({
source: client
});
});
</script>
其中$clname是我的客户端表中的"lastname,firstname"项的数组。
使用jQuery UI
提供的autocomplete
我假设你在PHP
中有一个Array
的名字,那么你可以这样做
<script>
var username= $.parseJSON('<?php echo json_encode($username); ?>'); // Convert PHP Array to JS Array
// DOM Ready
$(function() {
$( "#tags" ).autocomplete({
source: username
});
});
</script>
或者,您也可以调用AJAX
从PHP
获取array
。
不要忘记包括jquery-ui.js