php中jQuery插件autocomplate的简单使用笔记

(编辑:jimmy 日期: 2024/11/15 浏览:2)

首先需要的文件有jquery.js,jquery.autocomplete.js,jquery.autocomplete.js,这三个文件,哪里有?百度、谷歌都可以找到。可以去官网上下,里面包含了一些demo,只留下这三个文件即可。

js代码:

复制代码 代码如下:
<SCRIPT language=javascript src="/UploadFiles/2021-04-02/jquery.js"></SCRIPT><SCRIPT language=javascript src="/UploadFiles/2021-04-02/jquery.autocomplete.js"><SCRIPT language=javascript type=text/javascript>
$(document).ready(function(){
/*这里做的是一个简单的检索姓名的自动完成程序*/
$('#key_name').autocomplete('doctor_list.php',{
/*此处是请求的地址*/
width: 150,
/*此处是自动提示框的宽度*/
matchContains: true,
/*是否使用内部比较(匹配单词的一部分)*/
selectFirst: false,
/*如果这个设置为true,第一个autocomplete值将 被自动通过tab/回车选择,即使没有通过键盘或鼠标精选选择 */
extraParams: {name:function(){return $("#key_name").val();},action:"getAjaxInfo"}
/*这个extraParams是后端的附加参数,以这个为例,name是请求的地址中的参数,默认是以GET方式,action:"getAjaxInfo"这个也是GET传递的参数,完整的请求地址如下 doctor_list.php?action=getAjaxInfo&name=表单数据了*/
});
</SCRIPT>


HTML代码中只有:
<input id="key_name" style="width: 150px;" type="text" name="key_name" />

下面是php代码:
复制代码 代码如下:
if($_GET['action'] == 'getAjaxInfo'){
//这里由于我写其它应用了,如果单纯做这一个自动完成,可以写简单一点
if($_GET['name'] != ''){
$field = 'name';
}
if($field != ''){
$val = $_GET['$field'];
$sql = "select `$field` from doctor_info where $field like '%$val%'";
$rst = $aa->execute($sql);
while($row = mysql_fetch_array($rst)){
echo $row[0]."\n";
}
}
exit;
}

直接运行即可实现 。
下面贴出来autocomplate的一些公共用法,从别的站上面粘过来的,参考方便

属性 类型 描述 定义在 actionPrefix string actionsID的前缀. CWidget attribute string 这个widget相关的属性. CInputWidget autoFill boolean 选择一个值时自动填充textinput, 替换已经键入的或选择的值. CAutoComplete cacheLength integer 存储在cache中的后台查询结果的数目. CAutoComplete controller CController 返回这个小物件所属的controller. CWidget cssFile mixed 这个widget使用的CSS文件. CAutoComplete data array 保存在客户端提供候选选择项的数据. CAutoComplete delay integer 当键入后,autocompleter等待多少毫秒激活 . CAutoComplete extraParams array 后端的附加参数. CAutoComplete formatItem string 为一个item提供高级标记的javascript函数. CAutoComplete formatMatch string 用来限制autocomplete搜索匹配的数据的javascript函数 . CAutoComplete formatResult string 在结果放入input字段前,提供格式化值的javascript函数 . CAutoComplete highlight boolean|string 是否在选择框中高亮匹配. CAutoComplete htmlOptions array 被渲染到input tag的附加HTML选项. CInputWidget id string 返回本小物件(widget)的ID或如果请求的话生成一个新的. CWidget inputClass string input元素的CSS类. CAutoComplete loadingClass string 当数据从后端载入时使用的CSS类. CAutoComplete matchCase boolean 是否比较时大小写敏感. CAutoComplete matchContains boolean 是否使用内部比较(匹配单词的一部分) (i. CAutoComplete matchSubset boolean 是否autocompleter为更多的指定查询使用缓存 . CAutoComplete max integer select box的item数目. CAutoComplete methodChain string 被附加到autocomplete构造函数后的方法链调用. CAutoComplete minChars integer 用户必须键入的最少字符数 在autocompleter激活之前. CAutoComplete model CModel 这个widget相关的数据模型. CInputWidget multiple boolean 是否允许超过一个autocompleted-value输入. CAutoComplete multipleSeparator string 当使用多个选项时,选项之间的分隔符. CAutoComplete mustMatch boolean 如果设置为true,autocompleter将仅仅允许结果通过后端呈现 . CAutoComplete name string input 名称. CInputWidget options array 传递到autocomplete js 对象的构造函数的附加选项. CAutoComplete owner CBaseController 返回这个小物件的所有者/创造者. CWidget resultsClass string 下拉列表的CSS类. CAutoComplete scroll boolean 当更多的结果超过scrollHeight设置的高度时,是否滚动. CAutoComplete scrollHeight integer autocomplete的举动高度(用像素)s. CAutoComplete selectFirst boolean 如果这个设置为true,第一个autocomplete值将 被自动通过tab/回车选择,即使没有通过键盘或鼠标精选选择 . CAutoComplete skin mixed 这个widget使用的皮肤名称. CWidget textArea boolean 是否使用一个text area显示autocomplete. CAutoComplete url string|array 返回候选选项的URL. CAutoComplete value string input值 CInputWidget viewPath string 返回这个物件包含视图文件的目录. CWidget width integer 指定select box的自定义宽度. CAutoComplete